接口回调
2017-02-10 16:51
211 查看
接口回调传值可以通过两种方式来进行
1、抽象类
2、观察者模式
1:抽象类:
步骤:
1:创建一个抽象类
2:在抽象类里面声明两个抽象方法,(注意 抽象类里面可以有普通方法,接口里面只能有抽象方法)
3:在使用的类里面封装一个方法,将抽象类对象传递进来,通过对象来调用需要的抽象方法
4:在需要地方实例化类,通过调用该方法将抽象类实例化出来,从而达到接口回调的地步.
(代码基本相同)
2:观察者模式:
步骤:
1:创建一个接口
2:里面设置俩个抽象方法,(注意抽象方法可以没有抽象的关键字,因为在接口里面方法默认是抽象的,接口里面只能放抽象方法)
3:在需要使用的类里面声明一个接口的对象,例如:
4:在需要使用的类里面封装一个方法,参数是接口对象
5:在该类里面需要使用的地方用对象调用方法
//写一个接口
public interface MyItemClickListener {
public void onItemClick(View view,int postion);
}
//写一个回调方法
private MyItemClickListener mListener;
public void setOnItemClickListener(MyItemClickListener listener){
this.mItemClickListener = listener;
}
//你想在什么时候触发此方法进行回调?
@Override
public void onClick(View v) {
if(mListener != null){
mListener.onItemClick(v,getPosition());
}
}
1、抽象类
2、观察者模式
1:抽象类:
步骤:
1:创建一个抽象类
2:在抽象类里面声明两个抽象方法,(注意 抽象类里面可以有普通方法,接口里面只能有抽象方法)
3:在使用的类里面封装一个方法,将抽象类对象传递进来,通过对象来调用需要的抽象方法
4:在需要地方实例化类,通过调用该方法将抽象类实例化出来,从而达到接口回调的地步.
(代码基本相同)
2:观察者模式:
步骤:
1:创建一个接口
2:里面设置俩个抽象方法,(注意抽象方法可以没有抽象的关键字,因为在接口里面方法默认是抽象的,接口里面只能放抽象方法)
3:在需要使用的类里面声明一个接口的对象,例如:
4:在需要使用的类里面封装一个方法,参数是接口对象
5:在该类里面需要使用的地方用对象调用方法
//写一个接口
public interface MyItemClickListener {
public void onItemClick(View view,int postion);
}
//写一个回调方法
private MyItemClickListener mListener;
public void setOnItemClickListener(MyItemClickListener listener){
this.mItemClickListener = listener;
}
//你想在什么时候触发此方法进行回调?
@Override
public void onClick(View v) {
if(mListener != null){
mListener.onItemClick(v,getPosition());
}
}
相关文章推荐
- win10 enterprise
- 多线程介绍和多线程模块-lock-互斥锁
- Template literals
- 项目范围管理 教材精选
- 内存溢出与内存泄漏
- [BZOJ2683]简单题(cdq分治)
- 代码描述的Android AIDL示例 - IPC
- Java 简述对象克隆(复制)
- java中exception的printStackTrace()输出内容转成字符串
- 4.使用DShow采集摄像头图像和麦克风声音到本地(摄像头录制)
- zip4j -- Java处理zip压缩文件的完整解决方案
- 13.6.1
- mongo学习
- Android Wear 之 WearableListView
- UVA 11082 Matrix Decompressing(最大流)
- HALCON学习一(Halcon函数)
- ELASTIC 5.2部署并收集nginx日志
- JS和${}的一些问题
- linux下将c++编译成so,调用该so文件
- MySql多行数据合并成一行,将字段中的值拼接在一起