我需要能够使用一个键访问多个设置。例如:
<EditTextPreference
android:key="@string/channel_url1"
android:defaultValue="http://youtu.be/" />
<EditTextPreference
android:key="@string/num_views1"
android:defaultValue="0" />
<EditTextPreference
android:key="@string/num_subs1"
android:defaultValue="0" />
<EditTextPreference
android:key="@string/channel_url2"
android:defaultValue="http://you.tu/" />
<EditTextPreference
android:key="@string/num_views2"
android:defaultValue="0" />
<EditTextPreference
android:key="@string/num_subs2"
android:defaultValue="0" />
只要我保持每个键的唯一性,上述工作就可以了。但我想要的是每个通道都有num_views
和num_subs
的密钥名称,因此很容易在Java代码中迭代它们(不需要求助于命名约定)。 / p>
是否可以在Android的首选项XML中执行此操作?即使用单个顶级密钥选择一个偏好集合(不一定是同一类型!)?
答案 0 :(得分:2)
据我所知,这不受支持。您最好的机会可能是将所需的所有内容编码到XML或JSON对象中,并将它们保存为字符串首选项。但在我看来这是一笔不小的开销。
我会说使用SQLite作为替代方案。