【发布时间】:2014-01-12 17:37:57
【问题描述】:
我是创建PreferenceActivity 的新手。我的问题是如何通过更改其他首选项来启用和禁用首选项屏幕中的选项?
我的prefs.xml:
<ListPreference
android:entries="@array/units"
android:entryValues="@array/lunits"
android:key="listUnits"
android:summary="Units schosssing"
android:title="Units" android:defaultValue="C"/>
<ListPreference
android:entries="@array/palette"
android:entryValues="@array/lpalette"
android:key="listpalette"
android:summary="Palette schosssing"
android:title="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);
}
}
}
【问题讨论】: