gpt4 book ai didi

android - 使用导航组件导航到首选项 fragment

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:03:11 25 4
gpt4 key购买 nike

我正在尝试将我的中型应用程序迁移到新的 Android navigation 组件。

目前,我的应用程序由单个 Activity 组成,我打算保持不变(就此而言);因此,我面临这个问题,其中我有一个设置 fragment (PreferenceFragment),基本上可以从所有其他 fragment 导航到该 fragment 。此导航是通过应用栏中的菜单进行的,因此 onOptionsItemSelected(包含此导航)在主 Activity 中。

Navigation graph

我无法确定将 settingsFragment 连接到其他 fragment 的正确方法是什么。将它与所有其他人联系起来对我来说就像意大利面条一样。

  1. settingsFragment 是否应该连接到所有其他 fragment ?

  2. 我是否应该放弃单一 Activity 应用架构,因为 Google 没有给出足够的理由(或任何理由)来支持它?

最佳答案

要处理你的问题,你可以使用global actions .要使用它们,您需要在 <navigation> 中定义操作标签,不在里面 <fragment>像往常一样。您的导航图将包含下一个代码

<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

<!--Your other fragments-->


<!--Settings fragment-->
<fragment
android:id="@+id/settingsFragment"
android:name="com.example.oleksii.stackoverflow.SettingsFragment"/>

<!--Global action-->
<action android:id="@+id/open_settings_fragment"
app:destination="@id/settingsFragment"/>
</navigation>

在图形编辑器中,它将以下一种方式显示(即 destination 左侧的箭头):

enter image description here

更多详情:https://developer.android.com/topic/libraries/architecture/navigation/navigation-global-action

关于android - 使用导航组件导航到首选项 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53029821/

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