我想使用MultiSelectListPreference创建一个项目数组并在xml中搜索它们.
我用XML创建了MultiSelectListPreference(res / xml / preferences.xml)
<MultiSelectListPreference android:dialogTitle="@string/coursesTitle" android:key="searchedCourses" android:summary="" android:title="@string/coursesTitle" android:entries="@array/courses" android:entryValues="@array/courses" android:defaultValue="@array/empty_array" android:dependency="own_courses" />
我创建了一个偏好片段和一个偏好活动.我已经可以选择我想要搜索的项目了.
现在我想读出所选项目.
我试过了
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(this); String rawval = sharedPref.getString("searchedCourses","NA"); String[] selected = this(context,null).parseStoredValue(rawval); Toast.makeText(context,selected[0],Toast.LENGTH_LONG).show();
和我在网上找到的类似“解决方案”,但它不起作用.
解决方法
虽然对它们不是很熟悉,但我希望这可行:
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); Set<String> selections = sharedPrefs.getStringSet("searchedCourses",null); Toast.makeText(context,selections.get(0),Toast.LENGTH_LONG).show();
你看到了什么行为?