【发布时间】:2020-06-29 07:55:16
【问题描述】:
我使用导航组件的安全参数在目的地之间传递数据
build.gradle
apply plugin: "androidx.navigation.safeargs.kotlin"
MyType.kt
@Keep
@Parcelize
class MyType(
val type: String,
val name: String
) : Parcelable
nav_graph.xml
<action android:id="@+id/startMyFragment"
app:destination="@+id/myFragment">
<argument
android:name="myArg"
app:argType="com.myapp.MyType"
app:nullable="false" />
</action>
上面的导航图在编译过程中会产生很多警告。有人可以建议如何避免这些警告
where K,V are type-variables:
K extends Object declared in class HashMap
V extends Object declared in class HashMap
/builds/my-app/app/build/generated/source/navigation-args/debug/com/myapp/MyType.java:19: warning: [unchecked] unchecked call to put(K,V) as a member of the raw type HashMap
this.arguments.put("myArg", myArg);
提前致谢
【问题讨论】:
-
您可以在设置这些参数的位置添加代码 sn-p 吗?
-
请查看上面的代码sn-p (nav_graph.xml)
-
我的意思是你在哪里传递这些参数,即:
Navigation.findNavController(view).navigate -
val 方向 = MyDirection.actionStartMyFragment(label,detailArgs) Navigation.findNavController(view).navigate(directions)
-
你在哪里打电话给
setArgs(MyType())?
标签: android bundle android-architecture-navigation android-jetpack-navigation