背景:适配器中数据变动需传出
解决:适配器中自定义监听接口,外部监听变化做出反应。
适配器中设置:
private AddressNoListener addressNoListener; //定义
/**
* 自定义接口
*/
public interface AddressNoListener{
void addressNo(int position); //确定传出的值
}
//设置 get set
public AddressNoListener getAddressNoListener(){return addressNoListener;}
public void setAddressNoListener(AddressNoListener addressNoListener)
{this.addressNoListener = addressNoListener;}
//有变动的地方 (需要监听的地方)
viewHolder.deliveryAddressItemEdit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//选择地址
addressNoListener.addressNo(position);
}
});
外部获取:
private DeliveryAddressAdapter addressAdapter;//先定义
addressAdapter.setAddressNoListener(new DeliveryAddressAdapter.AddressNoListener() {
@Override
public void addressNo(int addressNo) {
//操作
}
});