看了一下Android基于回调的事件处理 ,大概知道了怎么写。
简单demo https://blog.csdn.net/liangcaiyun2013/article/details/44538657
不明白的是他的使用场景, 自己在学demo的时候 也没理解他的作用。 大神解释一下场景。
首先回调事件是观察者模式的一种做法,这种设计模式解决的问题就是,A去调用了B的方法,但是B的方法不知道什么时候才能执行完成,正常的思维是每过一段时间A就去问一下B,你的方法调用玩了吗?而观察者模式的做法很有意思,就是A不会管B的方法什么时候执行完,A会直接把A需要在B的方法执行完成后再做的工作交给B,对对B说,我不等你了,然后我把我要做的工作交给你了,你执行完你自己的方法后帮我执行。
如果你能get到上面的意思就很容易理解使用场景了,就是需要异步操作的场景。在android中,最常见的异步操作就是网络操作,比如你要到服务器请求数据,请求得到数据后需要把数据回填到界面,这个时候就可以把更新主界面的操作交给网络操作的子线程去做,就是回调(但是需要注意的是在android中是不能在子线程直接更新界面的)。如果你了解到RxJava或者RxAndroid的话,这个框架使用了大量的这种模式。