Отключить флажок после проверки, андроид
Я хочу добиться этого: пользовательская проверка флажка непроверенная, тост, флажок затем отключается.
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);
}
}
});
выход не удался, потому что они выполняются в одно и то же время, даже я помещаю male.setChecked(false) снаружи. Я не могу вспомнить, что что-то запускало что-то 1-е, а затем еще что-то... это поток? действительно не могу запомнить
Ответы
Ответ 1
Если вы хотите достичь: "пользовательская проверка флажка непроверенная, тост отображается, флажок затем отключается..", вы должны попробовать этот код:
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
}
}
});
Ответ 2
Попробуйте это....
- Используйте 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
}
}
});
Ответ 3
Попробуйте использовать .onClickListener(View.OnClickListener)
с реализованным View.OnClickListener
. В теле реализованного метода вы проверите, установлен ли CheckBox или нет, и установите их.
Ответ 4
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
}
}
});
Ответ 5
public class Check extends Activity {
private CheckBox male;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.link);
male = (CheckBox) findViewById(R.id.checkBox1);
male.setOnCheckedChangeListener(new OnCheckedChangeListener() {
private Timer t = new Timer();
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
// TODO Auto-generated method stub
if (isChecked) {
Toast.makeText(Check.this, "male", Toast.LENGTH_SHORT)
.show();
male.setEnabled(false); // disable checkbox
male.setChecked(true);
}
}
});
}
}