Hey, estoy tratando de conseguir mi ventana EDITTEXT para borrar su contenido cuando sea: 1) Se vuelve a seleccionar para introducir diferentes datos o 2) Un botón se pulsa para entrada predeterminado datosCompensación introducido previamente en el campo de texto EditarTexto
Esto no es texto de sugerencia. Por el momento, una vez que se ingresan los datos predeterminados, se quedan allí y no puedo borrarlos, incluso usando delete. He intentado poner editBox.setText ("") en OnClick Listener y addTextChangedListener (tanto antes como en métodos) usando un booleano para determinar si el código ya ha sido ingresado, pero simplemente lo ignora.
foodBox.addTextChangedListener(new TextWatcher(){
@Override
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
addFood();
valueAdded=true;
}
});
dogButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (valueAdded==true){
foodBox.setText("");
setFood(0.0);
}
isClicked=true;
animal=1;
addFood();
valueAdded=true;//value in the box
}
});
catButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (valueAdded){
foodBox.setText("");}
isClicked=true;
animal=2;
addFood();
valueAdded=true;
}
});
private void addFood() {
try{
aClass aob = new aClass();
setFood(0.0);
String a = this.foodBox.getText().toString();
if(isClicked&&TextUtils.isEmpty(a)){
if(animal==1){
a=mob.getDog();
}
if(animal==2){
a=mob.getCat();
}
this.foodBox.setText(a);
double d=Double.parseDouble(a);
setFood(d);
}else{
if(TextUtils.isEmpty(a)){
a="0";
}
double d=Double.parseDouble(a);
setFood(d);
}
}
catch (Exception e){
this.showAnswer.setText("Please input animals in numbers");
addFood();
}
}
Gracias
es muy extraño. ¿Podría ser algo relacionado con el código en el método addFood? – Broo
No usaría el oyente TextChanged, especialmente no así. La variable valueAdded que tiene parece realmente tonta, en su lugar debe verificar algo como 'foodBox.getText(). Length()' para asegurarse de que haya datos dentro del campo EditText. Repensa tu diseño. – Klaus
Deshágase de "isClicked" también ... – Klaus