小编Tob*_*237的帖子

“callback(value)”和“callback.invoke(value)”有什么区别?

我正在尝试在我的应用程序中使用一些回调,并且它可以与“callback(value)”“callback.invoke(value)”一起使用,以便正确调用回调。

我想知道“callback(value)”是否只是一个缩短版本,或者这两种调用回调的方式之间是否有区别?

我的函数具有两个回调参数(但只需要 1 个并且不需要另一个参数即可工作):

    fun signIn(username: String, password: String,  callback: (Response?) -> Unit) {

    val reqBody =
        "{\"what_to_do\":\"sign_user_in\",\"username\":\"$username\",\"password\":\"$password\"}"

    val request = createRequest(reqBody)

    myHttpClient.newCall(request).enqueue(object : Callback {
        override fun onResponse(call: Call, response: Response) {
                callback(response)
                callback.invoke(response)
            }
        }

        override fun onFailure(call: Call, e: IOException) {
            // Failed request..
        }
    })
}
Run Code Online (Sandbox Code Playgroud)

android callback kotlin

5
推荐指数
1
解决办法
707
查看次数

标签 统计

android ×1

callback ×1

kotlin ×1