Sim*_*yon 6 android-architecture-navigation
我已将我的应用程序转换为使用NavigationUI. 但setupWithNavController()取代了我的setNavigationItemSelectedListener().
在我的监听器中,我将一个(类型安全)参数传递给片段。
如果我理解你的问题是正确的,你正在寻找的是:
简要地:
在导航图中,在您想要将值发送到的片段上,您将添加一个参数。
<fragment android:id="@+id/myFragment" >
<argument
android:name="amount"
app:argType="integer"
android:defaultValue="0" />
</fragment>
Run Code Online (Sandbox Code Playgroud)
然后,当您将该片段引用为操作时,库将生成一个 Directory 类,该类如下所示:
val action = SpecifyAmountFragmentDirections.confirmationAction(amount)
v.findNavController().navigate(action)
Run Code Online (Sandbox Code Playgroud)
名称是根据您命名的片段和操作生成的。另请注意,如果对象也是可打包的,则可以发送整个对象。
如果有问题的片段是您的图表的起始目的地,我不确定您是否可以立即执行此操作。解决方法可能是将数据加载到片段中?或者也许从 Activity 进入共享 ViewModel?
祝你好运!
| 归档时间: |
|
| 查看次数: |
1582 次 |
| 最近记录: |