Android进阶之路-接口回调(一)
来源:互联网 发布:TS是什么画图软件 编辑:程序博客网 时间:2024/06/10 16:25
package com.example.call_back_demo;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity implements OnClickListener, CallBack { private TextView mBtn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mBtn = (TextView) findViewById(R.id.btn); /** * 回调步骤: * 1.首先回调是涉及到接口 * 2.数据的处理方式 * 3.需要的地方告诉其处理的结果 * */ /** * 回调的思想: * 回调的描述莫过于说:"我现在办不了这这件事情,等我能办了,我就告诉你." * */ mBtn.setOnClickListener(this); } //点击事件,创建办事儿着,由他通过接口告诉我们处理的结果 @Override public void onClick(View v) { DataSpeace data=new DataSpeace(this); data.setData(this); } //实现了我们定义的接口 public void Basket(Object obj) { Toast.makeText(this, "obj="+obj, 0).show(); } /** * 2.篮子已有,那么我们创建一个类来存放之前我们办事儿的"控件" * */ public class DataSpeace{ //接口充当成员 //创建成员变量和成员方法,且做初始化 public CallBack mCallBack; public DataSpeace(CallBack mCallBack) { this.mCallBack = mCallBack; } //存放数据的方式了,处理方案写在这里 public void setData(CallBack obj){ Toast.makeText(MainActivity.this, "我可以处理这件事儿了="+obj, 0).show(); } }}
接口必不可少:
package com.example.call_back_demo;/** * 1.接口(篮子,数据后续存放的控件) * */public interface CallBack { void Basket(Object obj);}
如果想运行Demo,布局当然必不可少:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#fff" > <TextView android:background="#658742" android:layout_centerInParent="true" android:id="@+id/btn" android:textColor="#fff" android:padding="5dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="回调Demo" /></RelativeLayout>
简单结构图:
1 0
- Android进阶之路-接口回调(一)
- Android学习路之Android中的接口回调(一)
- Java 进阶 之 抽象类与接口 概念(一)
- Android进阶之路——NDK(一)
- Android进阶之路 - Handler的详细使用(一)
- Android进阶之Mp3项目(一)
- Android进阶之(Service详解一)
- Android进阶之自定义view(一)
- 【Android进阶之自定义View(一)】
- Android菜鸟进阶之路一-Android基础
- Android 面试题总结之Android 进阶(一)
- Android 面试题总结之Android 进阶(一)
- Android 面试题总结之Android 进阶(一)
- 工程师进阶之路(一)
- 前端进阶学习之路(一)
- hibernate进阶之路(一)
- Retrofit的进阶之路(一)
- Android进阶之路——RecyclerView(一)
- 怎样进行ssm 的整合(spring+springmvc+mabatis)
- adb查看设备的时候,显示 List of devices attached
- iOS开发中单例设计模式、通知中心的使用
- scanf()、getch()、getchar()、getc()、gets()、gets_s()
- HDU-2089-不要62(数位DP)
- Android进阶之路-接口回调(一)
- [Unity]游戏内查看BundleVersion版本号.
- 价格计算工具类
- linux后台进程管理Supervisor
- leetcode[6] ZigZag Conversion
- JDK1.5/1.6/1.7之新特性(二)实践篇
- 随机数的最大值
- hdu 1075
- C++笔记-1(C++类型转换)