附加:懶得努力才活的累--因爲你寧願每天都活在自責和愧疚中也懶得去努力,所以就算每天無所事事也會覺得自己活得好累
回調在android開發中是經常使用到的,網上也有很多對回調進行講解,有空的話可以自己去搜搜,這裏附上個點擊打開鏈接等,言歸正傳,回調可以這麼說吧:就是在一個實現接口類(A類)的B類中,調用C類的方法,此時在B類中有個實現A類的方法,這個方法就是所謂的回調方法。具體看以下操作:
一、定義一個接口類
寫上你所需要實現的方法,供他人實現:
public interface CallbackListener {
/**
* 這裏主要聲明聲明回調接口的方法
*/
void method();
}
二、聲明一個調用上述接口的類
這裏我們定義個Waiter類,調用回調接口中的方法
public class Waiter {
private CallbackListener callbackListener;
public void setCallbackListener(CallbackListener callbackListener){
this.callbackListener = callbackListener;
}
public void use(){
callbackListener.method();
}
}
三、最後在Activity中實現接口類
在這裏我們通過調用Waiter類中的方法去調用接口方法,爲啥這麼做,因爲我們已經在當前類實現了那個接口,也就有了那個所謂的回調方法,我們就可以在這裏做些不正當的事了,哈哈
public class CallbackActivity extends AppCompatActivity implements CallbackListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_callback);
Waiter waiter = new Waiter();
waiter.setCallbackListener(this);
waiter.use();
}
@Override
public void method() {
//具體操作
}
}
另外,我們也可以使用匿名類(不懂自己搜,我很lan)的方式實現,把上面改下就行了,不用再去實現接口類了,真爽
Waiter waiter = new Waiter();
waiter.setCallbackListener(new CallbackListener() {
@Override
public void method() {
}
});
waiter.use();
看完上面如果還不懂的話,這裏還有另一篇大神寫的回調方法的解釋,點我,如果還不懂的話,沒救了,幫不了你了