我有一个 EditTextPreference,我想在两个不同的 PreferenceScreens 中向用户显示。它应该是完全相同的首选项(让 android:key 为“myEditText”),只是显示在两个不同的屏幕上。所以,这就是它的样子(完全剥离给你看一个例子):
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/someCategory">
<PreferenceScreen android:key="someScreen">
<PreferenceScreen android:key="someSubScreen">
<PreferenceCategory android:title="@string/someSubCategory">
<EditTextPreference android:key="myEditText"
....
/>
</PreferenceCategory>
</PreferenceScreen>
</PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory android:title="@string/someOtherCategory">
<PreferenceScreen android:key="someOtherScreen">
<PreferenceScreen android:key="someOtherSubScreen">
<PreferenceCategory android:title="@string/someOtherSubCategory">
<EditTextPreference android:key="myEditText"
....
/>
</PreferenceCategory>
</PreferenceScreen>
</PreferenceScreen>
</PreferenceCategory>
</PreferenceScreen>
当我通过 someScreen 转到 myEditText 并输入文本时,当我返回并通过 someOtherScreen 打开 myEditText 时,它不会显示。我必须关闭首选项并再次打开它。然后,两个 EditText 显示相同的文本。
那么,在不同屏幕上拥有完全相同的偏好的最佳方式是什么?
/编辑:
无论如何,我为什么要这样做?第一个 PreferenceScreen 是关于 URL 缩短的。您可以设置缩短选项、选择/重新排序要使用的服务,并输入 bit.ly、goo.gl 等的用户凭据。
第二个屏幕用于文件上传服务,您可以在其中执行相同操作(设置文件上传选项、选择/重新排序服务、输入上传服务的用户凭据)。
现在我正在集成 CloudApp,它既是文件又是 URL 缩短服务。因此,用户可能希望在 URL 缩短屏幕上找到它,但他也可能在文件上传屏幕上查找它。所以,我想让他轻松一点,然后在两个屏幕上都显示出来。它们不是顶级屏幕,它是一个相当深的结构。
所以,除了这是否有意义:这可能吗?