Android-从更改状态中禁用SwitchPreference,但获得启动对话框的单击响应?
如果我使用Android-从更改状态中禁用SwitchPreference,但获得启动对话框的单击响应?,android,switchpreference,Android,Switchpreference,如果我使用setEnabled(false)禁用,则开关(1)设置为off,(2)我不会从OnClickListener获得启动对话框的响应 编辑:在这种情况下,我不希望开关自动从on切换到off 有人处理过这个问题吗 解决方案是在OnPreferenceClickListener回调中使用setChecked(true),然后启动对话框 注意:这在首选项ChangeListener回调中不起作用。对于需要代码的用户: if (!BuildConfig.FULL_VERSION) {
setEnabled(false)
禁用,则开关(1)设置为off,(2)我不会从OnClickListener
获得启动对话框的响应
编辑:在这种情况下,我不希望开关自动从on切换到off
有人处理过这个问题吗 解决方案是在
OnPreferenceClickListener
回调中使用setChecked(true)
,然后启动对话框
注意:这在首选项ChangeListener回调中不起作用。对于需要代码的用户:
if (!BuildConfig.FULL_VERSION) {
SwitchPreferenceCompat preference = (SwitchPreferenceCompat) findPreference(getString(R.string.pref_notifications_service_key));
preference.setDefaultValue(false);
preference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
((SwitchPreferenceCompat) preference).setChecked(false);
new ProFeatureDialogFragment().show(getFragmentManager(), "PRO_FEATURE_TAG");
return false;
}
});
}
明亮的谢谢:D