无法在android

时间:2019-06-30 19:22:42

标签: android button isenabled disable

我正在努力启用被禁用的button。我知道这听起来很不可思议,但请允许我解释一下:当index等于-1时,应禁用button。如果index大于-1,则应启用button。问题是,当我单击禁用的button并且index大于-1时,button仍然被禁用。我尝试了btn.setOnclicklister(null),但是没有用。

代码:

 btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {


                    if (index == -1){
                        btn.setOnClickListener(null);
                        btn.setEnabled(false);
                        btn.setClickable(false);


                    }else if (index > -1){

                       btn.setOnClickListener(this);
                        btn.setEnabled(true);
                        btn.setClickable(true);

                    }


                }
            });

1 个答案:

答案 0 :(得分:1)

每次将OnClickListener设置为不为-1时,应启用index

View.OnClickListener listener = new View.OnClickListener() {
  @Override
  public void onClick(View v) {
     // do something helpful you want on click
     // and disable the button
      if (index == -1){
         btn.setOnClickListener(null);
         btn.setEnabled(false);
         btn.setClickable(false);
     }
  }
}

在某处:

...
index = 1;
btn.setOnClickListener(listener);
btn.setEnabled(true);
btn.setClickable(true);
...