Android CheckBox onCheckedChangeListener触发两次

时间:2014-04-26 00:19:09

标签: android checkbox

我设置了一个复选框,当用户在DatePicker对话框上更改日期时,会设置其选中状态。我已经设置了onCheckedChangeListener来在用户更改日期时显示toast。在我的测试中,每当我更改DatePicker对话框上的日期时,toast会触发两次。我只需要开一次。

我很感激有关这方面的任何建议。感谢。

//Here is the code -
//In the DatePicker - 
public void onDateSet(DatePicker view, int year, int monthOfYear,
            int dayOfMonth) {   

    String s = Integer.toString(year) + "/" +
    Integer.toString(monthOfYear) + "/" +
    Integer.toString(dayOfMonth);

        FreshMoonMainActivity.tvGregDate.setText((CharSequence)s);
        FreshMoonMainActivity.chkOne.setChecked(true);
        //FreshMoonMainActivity.Do
    }
//In FreshMoonMainActivity -
public void SetUpCheckOne(){
    chkOne = (CheckBox) findViewById(R.id.chkOne);
    chkOne.setOnCheckedChangeListener(new OnCheckedChangeListener(){
    @Override
    public void onCheckedChanged(CompoundButton v, boolean isChecked

    //if (((CheckBox)v).isChecked()){
    if(isChecked){
           chkOne.setChecked(false);
       Toast.makeText(getApplicationContext() , "Checkbox stuffer",   Toast.LENGTH_LONG).show();
            }
            }
        });
    }

0 个答案:

没有答案