【发布时间】:2022-01-07 03:22:12
【问题描述】:
我是 Android 编程新手。我经常得到 SO 的帮助。
我在工具栏菜单中有三个项目,并且基于对菜单项的选择,应用程序会遍历相关片段。我想将数据传递给片段。根据 SO 和 Android 官方网站中的信息,我在导航图中创建了参数并在 Main 活动中设置了值。但我不知道如何将它与 NavigationUI 一起使用。
导航图如下:
<fragment
android:id="@+id/helpFragment"
android:name="com.example.ptimer.HelpFragment"
android:label="About"
tools:layout="@layout/fragment_help">
<action
android:id="@+id/action_helpFragment_to_LauncherFragment"
app:destination="@id/LauncherFragment">
<argument
android:name="help_title"
app:argType="string" />
<argument
android:name="help_desc"
app:argType="string" />
<argument
android:name="help_image"
app:argType="string" />
</action>
</fragment>
主要活动方式如下:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Bundle bundle = new Bundle();
bundle.putString("help_title", help_title);
bundle.putString("help_desc", getResources().getString(R.string.pBasics_desc));
bundle.putString("help_image", "basic");
return NavigationUI.onNavDestinationSelected(item, navController)
|| super.onOptionsItemSelected(item);
}
我希望您能帮助我了解如何在 NavationUI 中使用捆绑包。或者有没有其他方法可以在选择菜单时将数据传递给片段。
【问题讨论】: