SharedPreference中的ListPreference

时间:2016-09-23 18:03:46

标签: android listpreference

我想询问是否可能为我的List中的每个值/条目设置,我只能选择它们一次,我的意思是:如果我选择第一个值,我有更多使用相同值/条目的ListPreference在第一个listPreference中的/ entries,我想禁用其他ListPreference的第一个值/条目。谢谢。

1 个答案:

答案 0 :(得分:0)

第一个问题是您要禁用ListPreferences中的某些项目,这在开箱即用时不受支持。我建议您使用this approach制作支持禁用项的自定义ListPreference

第二个问题是,您希望在多个ListPreferences之间共享有关所选项目的信息,因为您需要在其中修改CustomListPreferenceAdapter代码以使用相同的数据集,包括有关所选项目的信息在所有ListPreferences中。因此,您可能需要使用List其中项目保留有关其选择的信息(尽管Adapter模式旨在从ListView端的选择中抽象出来,但在您的情况下,您需要选择信息成为数据的一部分,呵呵)。当任何ListPreference(或通用情况下的ListView)进行选择时,您需要通知其他ListPreferences的适配器重新读取选择数据并禁用相关项。

我有点懒于为你编写完整的代码))使用它作为提示。