在Java或者Android中,我们会经常使用到回调函数,个人的理解就是在一个类中写一个接口,传入参数,然后再另外一个类中进行回调进行处理。
废话不多说,直接上代码了。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
废话不多说,直接上代码了。
在一个类中定义一个接口,类名自定义,并在接口中定义一个方法;
public static interface AdapterChildClickListener {
public void setOnAdapterChildClickListener(String code, int colorId);
}
定义变量:
private OrderPariAdapter.AdapterChildClickListener adapterChildClickListener;
类的实例化的方法,给外部调用实例化:
public void setOnAdapterChildClickListener(OrderPariAdapter.AdapterChildClickListener adapterChildClickListener){
this.adapterChildClickListener = adapterChildClickListener;
}
在本类中传入参数:
adapterChildClickListener.setOnAdapterChildClickListener(code.getText().toString(), 1);
这样接口就基本上写好了,下面就是在外部调用这个接口,然后实现具体的方法,下面是在另外一个类中实现我们自己定义的接口:
orderPair.setOnAdapterChildClickListener(new OrderPariAdapter.AdapterChildClickListener() {
@Override
public void setOnAdapterChildClickListener(String code, int colorId) {
Utils.makeToastInfo(OrderDetailPairActivity.this, code+"被点击了"+"colorId:"+colorId);
}
});
这样,当在本类中传入参数,那么实现该接口的其他类就会被自动回调,并处理,这里我只是简单的把得到的参数用吐司显示出来了。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------