Android 在用户选中CheckBoxPreference时启用EditTextPreference可见性,或在设置中设置为true
可以设置android:enabled=“false”的EditTextPreference这是在用户检查时默认设置的,如果用户单击然后单击EditTextPreference启用(true)。。 如果取消选中,则它将进入启用(假)Android 在用户选中CheckBoxPreference时启用EditTextPreference可见性,或在设置中设置为true,android,android-sharedpreferences,setting,checkboxpreference,edittextpreference,Android,Android Sharedpreferences,Setting,Checkboxpreference,Edittextpreference,可以设置android:enabled=“false”的EditTextPreference这是在用户检查时默认设置的,如果用户单击然后单击EditTextPreference启用(true)。。 如果取消选中,则它将进入启用(假) 这就是问题所在。您可以在您的首选项片段中以编程方式完成它 public class PreferenceFragment extends android.preference.PreferenceFragment 使用以下代码:以编程方式启用/禁用复选框 @
这就是问题所在。您可以在您的
首选项片段中以编程方式完成它
public class PreferenceFragment extends android.preference.PreferenceFragment
使用以下代码:以编程方式启用/禁用复选框
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
pref1 = (CheckBoxPreference) getPreferenceManager().findPreference("bookATrainer");
pref2 = (CheckBoxPreference) getPreferenceManager().findPreference("cancelBooking");
pref1.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
if (pref1.isChecked()) {
pref1.setChecked(false);
} else {
pref2.setChecked(true);
}
return true;
}
});
pref2.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
if (pref2.isChecked()) {
pref2.setChecked(false);
} else {
pref1.setChecked(true);
}
return true;
}
});
}
}
请改写您的问题,但听起来您想启用或禁用基于复选框的选项。将依赖项置于hourBooking
android:dependency="cancelBooking"
我真的无法理解您的问题,我们可以在MainActivity extands AppCompatActivity中执行此操作吗?在您的activity onCreate中,使用以下命令调用首选项片段:android.app.FragmentManager fm=getFragmentManager();fm.beginTransaction().replace(R.id.content_frame,new PreferenceFragment()).commit()代码>。。。这段代码我已经完成了。。但我仍然想启用false。当用户单击设置并设置CheckBoxPreference(取消预订)时,此EditTextPreference将为true或可见。。