是否可以在 PreferenceActivity 中定义 RadioGroup?提供多项选择时,我只能找到 ListView。
我错过了什么吗?
是否可以在 PreferenceActivity 中定义 RadioGroup?提供多项选择时,我只能找到 ListView。
我错过了什么吗?
欢迎您扩展任何 Preference课程。例如,我通过扩展完成了您正在寻找的事情PreferenceCategory。添加子首选项(例如PreferenceScreen和EditTextPreference),通常使用addPreference(),覆盖它并通过代码更改/设置小部件资源setWidgetLayoutResource()。自然,您的新小部件应该包含一个RadioButton. OnPreferenceClickListener使用设置自定义setOnPreferenceClickListener()。
接下来获取对ViewGroup“父”的引用onCreateView()。然后你可以将它转换为ListViewin onBindView(),并在其上设置 a OnHierarchyChangeListener。现在,当孩子Preference的Views 添加到ListView. View.OnClickListener在层次结构中的 new上设置一个 new View,但前提是View包含一个RadioButton. 现在管理点击。
如果您只需要添加PreferenceScreen为子项,这实际上非常容易。我还需要它EditTextPreference,这是棘手的部分。
好处很简单:您可以在ListPreference. AListPreference看起来也不同。此外, aListPreference只能包含预定义的值。因此,如果您需要EditTextPreference使用单选按钮选择 a,那将是不可能的。
查看 API Demos App - Preferences - Preferences from XML 或其他示例。
您基本上可以复制该代码。有一个条目显示带有无线电组的列表。
我现在没有代码,但你可以看看这里,它是相似的:
http://www.kaloer.com/android-preferences
<ListPreference
android:title="List Preference"
android:summary="This preference allows to select an item in a array"
android:key="listPref"
android:defaultValue="digiGreen"
android:entries="@array/listArray"
android:entryValues="@array/listValues" />
是否可以在 PreferenceActivity 中定义 RadioGroup?
欢迎您创建自己的DialogPreference子类来托管 a RadioGroup,但目前尚不清楚这会给您带来什么好处ListPreference。
提供多项选择时,我只能找到 ListView。
AListPreference提供单项选择,而不是多项选择。有一个新MultiSelectListPreference的多重选择,但只出现在 API 级别 11 中。