Change Checkbox value without triggering onCheckChanged

前端 未结 19 1028
广开言路
广开言路 2020-11-30 00:18

I have setOnCheckedChangeListener implemented for my checkbox

Is there a way I can call

checkbox.setChecked(false);
         


        
19条回答
  •  無奈伤痛
    2020-11-30 00:36

    How about this. Try to use Tag in View

    mCheck.setTag("ignore");
    mCheck.setChecked(true);
    mCheck.setTag(null);
    

    and

    switch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton compoundButton, boolean selected) {
    
                //If switch has a tag, ignore below
                if(compoundButton.getTag() != null)
                    return; 
    
                if (selected) {
                    // do something
                } else {
                    // do something else
                }
    
            }
        });
    

提交回复
热议问题