无法在 Android 的 Jetpack 首选项中找到 "extra" 属性
Not able to find "extra" attribute in jetpack preference in Android
我正在尝试构建设置类型的应用程序,我选择使用首选项来构建 UI。
我正在使用喷气背包首选项 (androidx.preference.Preference) ,
如果我想启动带有一些附加功能的片段,可以使用下面的正常首选项。
<com.android.xyz.ItemsTextPreference
android:key="xyz"
android:title="Fragment One"
android:visibility="invisible"
android:fragment="com.android.xyz.MyFragment"
<extra android:name="one" android:value="first fragment" />
</com.android.xyz.ItemsTextPreference>
但在 Jetpack 首选项中,没有“额外”属性。
还有其他方法可以从偏好视图发送额外内容吗?
尝试将您的额外属性包装在 intent 属性中
像这样:
<com.android.xyz.ItemsTextPreference
android:key="xyz"
android:title="Fragment One"
android:visibility="invisible">
<intent android:action="your_action" >
<extra android:name="one" android:value="first fragment" />
</intent>
</com.android.xyz.ItemsTextPreference>
我找到了解决方案,之前我的首选项屏幕只有以下架构,来自 jetpack。
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
从 android 的传统偏好中添加一个架构后,如下所示。
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
我可以使用组合来达到效果。
<com.android.xyz.ItemsTextPreference
android:key="xyz"
android:title="Fragment One"
app:isPreferenceVisible="false">
<extra android:name="one" android:value="first fragment" />
</com.android.xyz.ItemsTextPreference>
我正在尝试构建设置类型的应用程序,我选择使用首选项来构建 UI。 我正在使用喷气背包首选项 (androidx.preference.Preference) , 如果我想启动带有一些附加功能的片段,可以使用下面的正常首选项。
<com.android.xyz.ItemsTextPreference
android:key="xyz"
android:title="Fragment One"
android:visibility="invisible"
android:fragment="com.android.xyz.MyFragment"
<extra android:name="one" android:value="first fragment" />
</com.android.xyz.ItemsTextPreference>
但在 Jetpack 首选项中,没有“额外”属性。
还有其他方法可以从偏好视图发送额外内容吗?
尝试将您的额外属性包装在 intent 属性中 像这样:
<com.android.xyz.ItemsTextPreference
android:key="xyz"
android:title="Fragment One"
android:visibility="invisible">
<intent android:action="your_action" >
<extra android:name="one" android:value="first fragment" />
</intent>
</com.android.xyz.ItemsTextPreference>
我找到了解决方案,之前我的首选项屏幕只有以下架构,来自 jetpack。
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
从 android 的传统偏好中添加一个架构后,如下所示。
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
我可以使用组合来达到效果。
<com.android.xyz.ItemsTextPreference
android:key="xyz"
android:title="Fragment One"
app:isPreferenceVisible="false">
<extra android:name="one" android:value="first fragment" />
</com.android.xyz.ItemsTextPreference>