选中后禁用复选框,android
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/12702045/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
disable checkbox after checked, android
提问by cgpa2.17
I want to achieve this : user check on a unchecked checkbox, a toast displayed, the checkbox then become disable..
我想实现这一点:用户选中未选中的复选框,显示吐司,然后复选框变为禁用..
male.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
// TODO Auto-generated method stub
if (isChecked){
Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
male.setChecked(false);
}
}
});
the output failed, because they execute on the same time, even I put the male.setChecked(false) outside.. I can't recall there's something to run something 1st, then other thing.. is it thread? really cant remember
输出失败,因为它们同时执行,即使我把male.setChecked(false) 放在外面。真的不记得了
回答by Hiral Vadodaria
If you want to achieve: "user check on a unchecked checkbox, a toast displayed, the checkbox then become disable..",you should try this code:
如果您想实现:“用户检查未选中的复选框,显示吐司,然后复选框变为禁用..”,您应该尝试以下代码:
male.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
if (isChecked){
Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
male.setEnabled(false); // disable checkbox
}
}
});
回答by Kumar Vivek Mitra
Try this....
尝试这个....
-Use the setEnabled(false)
on the CheckBox
-使用setEnabled(false)
上CheckBox
male.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
if (isChecked){
Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
male.setEnabled(false); // Will Disable checkbox
}
}
});
回答by Pawel
Try to use .onClickListener(View.OnClickListener)
with implemented View.OnClickListener
. In body of implemented method you will check if the CheckBox is checked or not and set them.
尝试使用已.onClickListener(View.OnClickListener)
实现的View.OnClickListener
. 在实现的方法的主体中,您将检查 CheckBox 是否被选中并设置它们。
回答by Ram kiran
male.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
// TODO Auto-generated method stub
if (isChecked){
Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
//male.setVisibility(View.GONE);//disappear your check box
male.setEnabled(false);//disable your check box
}
}
});
回答by Sandeep Patel
First , Register Your CheckBox to OnCheckedChangeListener.
首先,将 CheckBox 注册到 OnCheckedChangeListener。
chk.setOnCheckedChangeListener(this);
then, Overrides it's Method
然后,覆盖它的方法
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b)
{
if (chk.isChecked())
{
chk.setEnabled(false);
}
}