我正在使用函数类型来存储要在单击按钮时调用的代码。
如何从此函数类型返回
代码如下:
var SearchClickEvent: ((searchString: String) -> Unit)? = null
inputDialog!!.SearchClickEvent = Search_Click
private val Search_Click = { searchString: String ->
if(searchString.isEmpty()){
return//Error msg : return is not allowed here
//How to return from here
}
}
注意:我在不调用或编写任何函数的变量中存储了一段代码
最佳答案
您需要使用lambda中的显式return语句创建label,例如:
// label for lambda---v
val Search_Click = action@{ searchString: String ->
if (searchString.isEmpty()) {
return@action;
}
// do working
}
或反转if语句,如下所示:
val Search_Click = { searchString: String ->
if (!searchString.isEmpty()) {
// do working
}
}
关于android - 如何从Kotlin函数类型返回,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44772515/