问题描述:
写一个消息列表,其中一种消息类型是是消息内部可以点击并且进行操作。
解决方式:
1.在adapter中定义一个接口
clickEndOrder clickMsg;
public interface clickMsg{
public void click_yes(View view);
public void click_no(View view);
}
2.在adapter中实例化对应view
TextView yes=helper.getView(R.id.chat_endOrder_yes); //实例化view,具体情况具体分析
TextView no=helper.getView(R.id.chat_endOrder_no);
yes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickMsg.click_yes(v,item.getId());
}
});
no.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickMsg.click_no(v,item.getId());
}
});
3.在activity中重写方法
@Override
public void click_yes(View view) {
//写想要实现的功能
}
百度的接口回调的定义:
可以把使用某一接口的类创建的对象的引用赋给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口的方法。实际上,当接口变量调用被类实现的接口中的方法时,就是通知相应的对象调用接口的方法,这一过程称为对象功能的接口回调。(Android接口回调-知吾煮)
我个人的浅薄理解:
1.定义接口
2.调用接口
3.实现接口