android接口回调的两中简单写法
来源:互联网 发布:全国乡镇街道数据库 编辑:程序博客网 时间:2024/06/06 14:27
android接口回调的两中简单写法——B509小贴士
一、第一种内部重写(较简单,常用异步)
(1)创建接口 ,并实现方法 (2)在获取数据类中实现传递接口对象为参数的方法
(3)在主类中调用返回数据方法 并传递接口对象,并重写方法
1.首先创建一个 CallBack接口用来传递内容 如下
里面实现两个方法Success和Fail用来返回数据public class MyInterface { public interface CallBack{ void Success(String success); void Fail(String fail); }}
2.其次写好获取数据的类BackData(可以叫做传递桥梁)
这里面定义这个TransportContext方法用来接收参数也就是callBack对象public class BackData {/** * 效果就是第一次点击返回成功第二次返回失败 */private static boolean isInternet;//模拟网络情况public static void TransportContext(MyInterface.CallBack callBack) { if (!isInternet) { callBack.Success("成功"); isInternet = true; } else { callBack.Fail("失败"); } }}
3.在主类中调用 传递方法(搭桥)定义一个CallBackActivity
调用TransportContext这个方法。传递callBack对象并重写里面的方法public class CallBackActivity extends AppCompatActivity{private TextView tv_callBack_click;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_call_back); tv_callBack_click = (TextView) findViewById(R.id.tv_callBack_click);} //按钮点击事件public void onClick_callback(View view) { BackData.TransportContext(new MyInterface.CallBack() { //重写接口方法 获取数据 @Override public void Success(String success) { tv_callBack_click.setText(success); } @Override public void Fail(String fail) { tv_callBack_click.setText(fail); } });}}
4.布局太简单了就不贴出来了 贴一张效果图
二、第二种 外部重写方法 (其实本质相同)
步骤
1.创建接口并且实现里面的方法
2.想把消息返回哪(主类)在哪实现接口 并重写方法
3.在主类中将上下文传递到另一个类中(实际也是接口对象)
4.用传递过来的接口对象调用接口里的方法
5.再回调中获取消息
1.接口跟上边一样
2.获取数据方法也是一样
3.主类
public class CallBackActivity extends AppCompatActivity implements MyInterface.CallBack {private TextView tv_callBack_click;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_call_back); tv_callBack_click = (TextView) findViewById(R.id.tv_callBack_click);} //按钮点击事件public void onClick_callback(View view) { //传递上下文 BackData.TransportContext(this);}//外部重写方法@Overridepublic void Success(String success) { tv_callBack_click.setText(success);}@Overridepublic void Fail(String fail) { tv_callBack_click.setText(fail);}}
4.效果图一样,,就不贴了 希望有用
0 0
- android接口回调的两中简单写法
- Android回调接口的写法
- android中app升级的两种常用写法
- Android中常用的两种动画写法
- android中状态机原理之状态机的两种写法
- android接口回调第二种优化写法详解、另外附赠简单例子
- 接口回调写法
- 安卓接口回调的写法
- android 接口回调的简单实现
- mybatis在<if>中传入一个简单类型参数的两种写法。
- mybatis在<if>中传入一个简单类型参数的两种写法
- Android中接口(Interface)的简单使用
- Android中接口(Interface)的简单使用
- android onClick()方法的两种写法
- android中单例的最佳两种写法
- JAVA中随机数的两种写法
- c++中include的两种写法
- HttpWebRequest调用接口的方法两种写法
- 内存缓存框架
- 互联网大数据日志收集离线实时分析实战案例
- 保存图片到本地
- MySQL数据类型--二进制类型
- JMM
- android接口回调的两中简单写法
- iOS开源项目二
- HDOJ 1829 A Bug's Life (种类并查集)
- 知识管理Confluence
- weblogic 安装部署详情(linux)
- contenttype 为application/x-www-form-urlencoded 和 application/json 区别和说明
- 全文检索引擎Solr系列——整合中文分…
- css手风琴
- PostgreSQL