Preference open=findPreference("open");
open.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object check)
{
//因为check状态是默认为新的,也就是点击之后的状态,但我们设置了reture false,新状态不会显示,但状态还是被设置上了,所以把状态还原成当前状态
if(check.toString()=="true")
{
check=false;
}
else
{
check=true;
}
//获取sw
TwoStatePreference topen = (TwoStatePreference)findPreference("open");
if(check.toString()=="false")
{
//打开事件,之后再打开开关
topen.setChecked(true);
}
else if(check.toString()=="true")
{
//关闭事件之后再关上开并
topen.setChecked(false);
}
//Log.i("Cilck",check.toString());
return false;
}
});
网友评论