0

我正在尝试创建一个PreferenceActicity. 我需要我的偏好是 type MultiSelectedListPreference

我在网上找到了这段代码:

<MultiSelectListPreference
    android:dialogTitle="@string/mode_repeat"
    android:key="mode_repeat"
    android:summary=""        
    android:title="@string/mode_repeat"
    android:entries="@array/weekdays"
    android:entryValues="@array/weekdays_values"
    android:defaultValue="@array/empty_array"
    />

问题是我在运行时获取条目和条目值。我正在构建ArrayList我的应用程序运行时,问题是如何将我设置ArrayList为条目和entryValues

我是否需要创建一个空的 xml 文件,我将在构建我的列表期间重新编写它?

4

1 回答 1

0

您将无法在运行时更改 xml。您的问题的解决方案是使用方法setEntries()和类。setEntryValues()MultiSelectListPreference

这是一个基本的代码片段:

MultiSelectListPreference repeatModePreference = (MultiSelectListPreference) findPreference(Constants. mode_repeat);
repeatModePreference.setEntries(yourEntries); // This is human-readable strings
repeatModePreference.setEntryValues(yourEntryvalues) // The value corresponding to the human-readable string

希望这可以帮助。

于 2015-10-23T13:49:04.630 回答