我读过:https://developer.android.com/jetpack/compose/navigation#optional-args
这是我的代码:
override fun getComposableSettings(): ComposableSettings {
return ComposableSettings(
route = "${BASE_ROUTE}?$ARG_SEARCH_TEXT_DEEPLINK={${ARG_SEARCH_TEXT_DEEPLINK}}",
arguments = listOf(
navArgument(ARG_SEARCH_TEXT_DEEPLINK) {
type = NavType.StringType
defaultValue = ""
},
)
)
}
这是我的路线:
fun getRoute(searchText: String = ""): String {
return "${BASE_ROUTE}?$ARG_SEARCH_TEXT_DEEPLINK={${searchText}}"
}
它可以工作,因为我的参数总是String
和值:{}
,所以它不是空字符串,但总是有值,那么我需要删除这个括号,使其正常工作,并与下一个操作操作。对我来说,这是无稽之谈。它应该是可选参数,比如如果它是空的,它就和empty defaultValue
一起,仅此而已。在这个文档示例中,添加了像test1234
这样的值的字符串,所以它当然可以工作,因为它不是可选参数,而是强制使任何值。
问候
1条答案
按热度按时间tzdcorbm1#
检查以下代码。它的工作原理是不在参数中传递任何值