在Android开发过程中当我们调用异步接口时需要接收接口返回的数据,这个时候往往我们会用到回调方法
接口实现如下:
object DataManager{
public fun getData(callBack:(String)->Unit){
Thread{
.... // 处理耗时的工作
callBack("这是接口获取到的数据")
}
}
}
在这个接口的中启用了一个线程,线程在处理完事情后调用传入的回调方法返回数据给调用者
调用者该如何使用这个接口呢,见下面的代码:
DataManager.getData() { str ->
Log.d("输出数据:",str)
}
在调用的过程中用到Kotlin的高阶函数,使用Lamdba表达式作为参数直接传递,最后通过日志输出接口返回过来的字符串。