我正在编写一个带有许多选项的配置菜单,我想在主PreferenceScreen中添加一个可以启动另一个PreferenceScreen的选项。

我不知道如何创建一个通用菜单项(因此,也不是EditTextPreference或CheckBoxPreference等)。

谢谢大家。

最佳答案

嵌套您的PreferenceScreen元素。内部的PreferenceScreen将保存第二个屏幕的内容;放在内部PreferenceScreen上的标题和描述将成为“通用菜单项”。

例如:

<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android">
    <PreferenceCategory android:title="Simple Preferences">
        <CheckBoxPreference
            android:key="checkbox"
            android:title="Checkbox Preference"
            android:summary="Check it on, check it off"
        />
        <RingtonePreference
            android:key="ringtone"
            android:title="Ringtone Preference"
            android:showDefault="true"
            android:showSilent="true"
            android:summary="Pick a tone, any tone"
        />
    </PreferenceCategory>
    <PreferenceCategory android:title="Detail Screens">
        <PreferenceScreen
            android:key="detail"
            android:title="Detail Screen"
            android:summary="Additional preferences held in another page">
            <CheckBoxPreference
                android:key="checkbox2"
                android:title="Another Checkbox"
                android:summary="On. Off. It really doesn't matter."
            />
        </PreferenceScreen>
    </PreferenceCategory>
    <PreferenceCategory android:title="Other Preferences">
        <EditTextPreference
            android:key="text"
            android:title="Text Entry Dialog"
            android:summary="Click to pop up a field for entry"
            android:dialogTitle="Enter something useful"
        />
        <ListPreference
            android:key="list"
            android:title="Selection Dialog"
            android:summary="Click to pop up a list to choose from"
            android:entries="@array/cities"
            android:entryValues="@array/airport_codes"
            android:dialogTitle="Choose a Pennsylvania city" />
    </PreferenceCategory>
</PreferenceScreen>


(来自this sample project

关于android - 通过PreferenceActivity选项启动另一个PreferenceScreen,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5060103/

10-09 01:32