Android “与”的区别是什么;由navArgs<;ScoreFragmentArgs>;()";vs";ScoreFragmentArgs.fromBundle(参数!!)"; val scoreFragmentArgs1 by navArgs() val scoreFragmentArgs2=ScoreFragmentArgs.fromBundle(参数!!)

Android “与”的区别是什么;由navArgs<;ScoreFragmentArgs>;()";vs";ScoreFragmentArgs.fromBundle(参数!!)"; val scoreFragmentArgs1 by navArgs() val scoreFragmentArgs2=ScoreFragmentArgs.fromBundle(参数!!),android,kotlin,android-jetpack,android-jetpack-navigation,Android,Kotlin,Android Jetpack,Android Jetpack Navigation,我能够使用上述任何语句访问从上一个片段传递的参数。有人能解释一下两者的区别以及何时使用它们吗。提前感谢第二个电话比较简单。每当该行运行时,都会对其进行热切的求值,因此它需要参数捆绑包已经就位,并且包含您希望在其中的所有键 第一种方法为您提供了一个延迟创建的Args实例,该实例只有在您首次尝试读取其值时才会初始化。因此,在类级别声明它是安全的。有关所有详细信息,请参见文档中的。最重要的部分是: 强烈建议仅当活动由androidx.navigation.NavController.navigate

我能够使用上述任何语句访问从上一个片段传递的参数。有人能解释一下两者的区别以及何时使用它们吗。提前感谢

第二个电话比较简单。每当该行运行时,都会对其进行热切的求值,因此它需要
参数
捆绑包已经就位,并且包含您希望在其中的所有键


第一种方法为您提供了一个延迟创建的
Args
实例,该实例只有在您首次尝试读取其值时才会初始化。因此,在类级别声明它是安全的。有关所有详细信息,请参见文档中的。最重要的部分是:

强烈建议仅当活动由
androidx.navigation.NavController.navigate
和相应的
androidx.navigation.NavDirections
对象启动时使用此方法,以确保存在所需的参数

只有在
活动
附加到应用程序后才能访问此属性,在此之前的访问将导致
非法状态异常


返回类型是否相同?什么是
参数
变量?
val scoreFragmentArgs1 by navArgs<ScoreFragmentArgs>() 

val scoreFragmentArgs2 = ScoreFragmentArgs.fromBundle(arguments!!)