Callback機制在Android中的應用場景
阿新 • • 發佈:2019-01-31
Callback是什麼?
當我們需要把耗時操作傳送到子執行緒執行時, 需要在耗時操作完成時將結果放到主執行緒來呈現或者再處理時, 我們需要在子執行緒主動地回頭呼叫主執行緒中處理結果的方法, 這種回撥式的機制就是Callback.
如何使用 Callback?
主執行緒:子執行緒://呼叫包含子執行緒以及耗時操作的方法, 並注入匿名內部類, 其中的onSuccess作為回撥方法 Service.login("xxx", "xxx", new Service.Callback<String>() { @Override public void onSuccess(String result) { System.out.println(result); } });
public class Service { public static void login(String account, String password, final Callback<String> callback) { {//假設這對花括號內部是子執行緒環境 //. //. //. //一系列費時處理之後 String result = "xxx"; callback.onSuccess(result); // 主動呼叫主執行緒注入的onSuccess方法 } } public static abstract class Callback<T> { public abstract void onSuccess(T t) ; } }