I just added some details to the code and it executes me but when I want to enter data in the edit the application is closed. I appreciate your support.
This is my code.
package com.example.android.toolsmoises;
import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; import android.widget.EditText;
public class Temperature extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_temperatura);
conversor();
}
private void conversor() {
final EditText editText1 =findViewById(R.id.celsius);
final EditText editText2 =findViewById(R.id.farenhait);
final EditText editText3 =findViewById(R.id.kelvin);
editText1.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void afterTextChanged(Editable editable) {
editText2.setText((int) (Integer.parseInt(editText1.getText().toString())/1.8+32));
editText3.setText((int) (Integer.parseInt(editText1.getText().toString())/1.8+32));
}
});
editText2.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void afterTextChanged(Editable editable) {
editText1.setText((int) (Integer.parseInt(editText2.getText().toString())*1.8+32));
editText3.setText((int) (Integer.parseInt(editText2.getText().toString())*1.8+32));
}
});
editText3.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void afterTextChanged(Editable s) {
editText1.setText((int) (Integer.parseInt(editText2.getText().toString())*1.8+32));
editText3.setText((int) (Integer.parseInt(editText2.getText().toString())*1.8+32));
}
});
}
}
and this is the layout:
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Conversor de temperatura"
android:textSize="30dp"
android:textAlignment="center"
android:layout_margin="10dp"/>
<EditText
android:id="@+id/celsius"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="celsius"
android:textAlignment="center"/>
<EditText
android:id="@+id/farenhait"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="fahrenheit"
android:textAlignment="center"/>
<EditText
android:id="@+id/kelvin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="kelvin"
android:textAlignment="center"/>