cha*_*nae 4 android kotlin android-jetpack android-jetpack-navigation
val scoreFragmentArgs1 by navArgs<ScoreFragmentArgs>()
val scoreFragmentArgs2 = ScoreFragmentArgs.fromBundle(arguments!!)
Run Code Online (Sandbox Code Playgroud)
我可以使用上述任何语句访问从前一个片段传递的参数。有人可以解释它们的区别以及何时使用它们。提前致谢
第二个调用更简单。每当该行运行时,都会急切地评估该行,因此它将要求arguments捆绑包已经就位,并包含您希望在其中的所有键。
第一种方法给你一个延迟创建的Args实例,它只会在你第一次尝试读取它的值时被初始化。因此在类级别声明它是安全的。有关navArgs所有详细信息,请参阅文档。最重要的部分:
强烈建议仅在 Activity
androidx.navigation.NavController.navigate使用相应的androidx.navigation.NavDirections对象启动时使用此方法,以确保存在所需的参数。只有在
Activity附加到应用程序后才能访问此属性,在此之前访问将导致IllegalStateException.
| 归档时间: |
|
| 查看次数: |
1456 次 |
| 最近记录: |