Button.setClickable(false) is not working

前端 未结 11 2314
無奈伤痛
無奈伤痛 2021-01-02 02:19

I have set mButton.setClickable(false); in my code but still this button is invoked by global button.setOnClickListener of my code.

EDIT:

11条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-01-02 02:59

    This will work in case of Imageview as well as the button.

     private OnClickListener onClickListener = new OnClickListener() {
            @Override
            public void onClick(View v) {
            if (imageview.isEnabled()){
                //I have wrapped all code inside onClick() in this if condition
                //Your onClick() code will only execute if the imageview is enabled
                //Now we can use setEnabled() instead of setClickable() everywhere
            }}
        };
    

    Inside onCreate(), you can do setEnabled(false) which will be equivalent to setClickable(false).

    We are able to use setEnabled() as tag because it's state remains uneffected on invocation of click (unlike setClickable() whose state changes).

提交回复
热议问题