gpt4 book ai didi

android - 启动特定 PreferenceScreen 的 Intent

转载 作者:行者123 更新时间:2023-12-05 00:07:21 24 4
gpt4 key购买 nike

在我的应用程序中,我有一个 PreferenceActivity,其中包含一个 PreferenceFragment,后者又包含使用 addPreferencesFromResource(...) 从 XML 文件添加的首选项。首选项层次结构如下所示(有些简化):

<?xml version="1.0" encoding="utf-8"?>

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">

<PreferenceCategory android:title="@string/pref_header_general">
<PreferenceScreen
android:title="My team"
android:key="button_my_team_settings_key">

<EditTextPreference
android:title="Set team number"
android:key="@string/preference_my_team"
android:persistent="true"
android:inputType="number"/>
</PreferenceScreen>
</PreferenceCategory>

</PreferenceScreen>

在我的应用程序的其他地方,我想链接到我的偏好中的特定 PreferenceScreen,特别是“我的团队”。 Android 平台是否原生支持此功能?或者我是否必须通过 Intent 发送所需的 PreferenceScreen,然后手动处理切换到适当的屏幕?

最佳答案

您可以从其他地方发送 Intent 来执行相同的操作,但您必须进行一些更改。首先,创建一个新的 Fragment 类,在单独的 xml 文件中包含以下内容:

<PreferenceScreen
android:title="My team"
android:key="button_my_team_settings_key">

<EditTextPreference
android:title="Set team number"
android:key="@string/preference_my_team"
android:persistent="true"
android:inputType="number"/>

</PreferenceScreen>

(我已经从您自己的代码中提取了这一部分。)接下来,在您的代码中,对于根首选项屏幕,将内部 PreferenceScreen 替换为以下内容:

<Preference
android:title="My Team"
app:fragment="com.packagename.FragmentClassYouMade"/>

现在,您有一个 Fragment 而不是要链接到的 Subscreen。同一 Activity 中的 fragment 可以很容易地显示在其他地方。

关于android - 启动特定 PreferenceScreen 的 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24043503/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com