Я хочу изменить значение переменной после чтения из Firebase по нажатию кнопки.Например, если значение равно 0 в базе данных после нажатия кнопки, оно должно измениться на 1, а если оно равно 1, то должно измениться на 2. Кроме того, оно должно сброситься до 0 после 4.
on.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Context context = getApplicationContext();
EditText editText = findViewById(R.id.input);
final String link = editText.getText().toString();
fled1 = new Firebase("https://iot-5z6h8.firebaseio.com/");
// Read from the database
myRef = FirebaseDatabase.getInstance().getReference();
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
state = dataSnapshot.child("Touch").getValue().toString();
value = Integer.parseInt(state);
Log.d(TAG, "Value is: " + state);
value+=1;
if(value==4){value=0;}
Firebase fled1Child = fled1.child("Touch"); fled1Child.setValue(value);
}
@Override
public void onCancelled(@NonNull DatabaseError error) {error.toException());
}
});
Я ожидаюзначение в базе данных можно изменить только по нажатию кнопки.Но значение изменяется в непрерывном цикле до 0-1-2-3-0-1-2-3.