我對接口不是很熟悉,所以我想知道,將活動的引用傳遞給asynctask,然後調用onPostExecute中該活動的方法。是這些這些實施例之間的差異,爲什麼要接口來代替爲什麼我們使用回調接口而不是僅僅傳遞參考活動
接口例如
public interface OnTaskCompleted{
void onTaskCompleted();
}
活動:
public YourActivity extends Activity implements OnTaskCompleted{
}
的AsyncTask:
public YourTask extends AsyncTask<Object,Object,Object>{
private OnTaskCompleted listener;
public YourTask(OnTaskCompleted listener){
this.listener=listener;
}
protected void onPostExecute(Object o){
listener.onTaskCompleted();
}
}
活性例
活動:
public YourActivity extends acitivty {
public myCallbackMethod(){
//do something
}
}
的AsyncTask
public YourTask extends AsyncTask<Object,Object,Object>{
private YourActivity act;
public YourTask(YourActivity act){
this.act=act;
}
protected void onPostExecute(Object o){
act.myCallbackMethod();
}
}
也許你想問的是「爲什麼程序接口?」 – 2014-09-28 01:39:08