大佬教程收集整理的这篇文章主要介绍了android – 在PreferenceActivity中启用和禁用选项,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的prefs.xml:
<ListPreference android:entries="@array/units" android:entryValues="@array/lunits" android:key="listunits" android:sumMary="Units schosssing" android@R_737_6964@="Units" android:DefaultValue="C"/> <ListPreference android:entries="@array/palette" android:entryValues="@array/lpalette" android:key="listpalette" android:sumMary="Palette schosssing" android@R_737_6964@="Palette" android:DefaultValue="1"/>
在listunits中有2个选项,Celsius和Fahrenheit,所以如果用户选择Celsius,则应该启用listpalette,如果用户选择Fahrenheit变为禁用,我该怎么做?
我的设置活动:
public class SetTingsActivity extends PreferenceActivity { @Override protected void onCreate(final Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); getFragmentManager().begintransaction().replace(android.R.id.content,new MyPreferenceFragment()).commit(); } public static class MyPreferenceFragment extends PreferenceFragment { @Override public void onCreate(final Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); addPreferencesFromresource(R.xml.prefs); } } }
首先获取两个ListPreference的实例并应用此方法.
ListPreference mlistunits,mlistPalette; mlistunits= (ListPreferencE)findPreference("listunits"); mlistPalette= (ListPreferencE)findPreference("listpalette"); mlistunits.setEnable(false); mlistPalette.setEnabled(true);
并使用下面的列表
OnPreferencechangelistener listener = new OnPreferencechangelistener() { @Override public Boolean onPreferenceChange(Preference preference,Object newvalue) { // newValue is the value you choose return false; } };
将监听器应用于ListPreference
@H_835_4@mlistPalette.setOnPreferencechangelistener(listener);以上是大佬教程为你收集整理的android – 在PreferenceActivity中启用和禁用选项全部内容,希望文章能够帮你解决android – 在PreferenceActivity中启用和禁用选项所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。