Android studio, изменение текста кнопки при каждом нажатии в java

#java #android-studio #button #text #click

#java #android-studio #кнопка #текст #щелчок

Вопрос:

Я попробовал что-то, что работает, но может ли быть лучший способ сделать это?

 private Boolean set = false;

    public void btnClick(View view) {
        set = ! set;
        Button button = findViewById(R.id.button);
        if(set == true) {button.setText("Hi!");}
        else{button.setText("Hi again!");}
    }
 

Ответ №1:

Просто сделайте

  button.setText(set? "Hi" : "Hi again");
 

Ответ №2:

Метод имеет параметр в качестве класса представления. Это означает, что вам просто не нужно определять кнопку.

 private Boolean set = false;

public void btnClick(View view) {
    set = ! set;
    //Then the below line of code can be written somewhat like the above user mentioned. Changing a minor detail.
    view.setText(set ? "Hi" : "Hi again");
}
 

И вы можете указать этот метод в макете как onClick свойство кнопки.