• 简单回调机制的基本建立


    简单回调机制的建立主要分为下面几步:

    1.写一个回调类,写出需要的构造方法

    2.定义一个接口,里面写一个抽象方法,方法体(String data)为所需要回调的数据

    3.定义一个设置接口的方法,里面得到接口对象

    4.定义一个发送数据的方法,当调用这方法时,数据自动发送及接受

    如下:

    package com.zzw.huidiao;
    
    public class SendData {
    
        private OnSendDataListener mOnSendDataListener = null;
    
        //1.写出所需要的构造方法
        public SendData() {
    
        }
    
        //2.定义一个接口,里面写一个抽象方法,方法体(String data)为所需要回调得到的数据
        public interface OnSendDataListener {
            public void onAcceptData(String data);
        }
    
        //3.定义一个设置接口的方法,里面得到接口对象
        public void setOnSendDataListener(OnSendDataListener mOnSendDataListener) {
            this.mOnSendDataListener = mOnSendDataListener;
        }
    
        //4.定义一个发送数据的方法,当调用这方法时,数据自动发送及接受
        public void send(String data) {
            mOnSendDataListener.onAcceptData(data);
        }
    
    }

    使用的时候,只需new出这个方法的对象,然后使用setOnSendDataListener()的方法得到监听,在调用send()方法即可触发监听得到回调的数据

    如下代码:

    package com.zzw.huidiao;
    
    import com.zzw.huidiao.SendData.OnSendDataListener;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            SendData mSendData = new SendData();
            mSendData.setOnSendDataListener(new OnSendDataListener() {
    
                @Override
                public void onAcceptData(String data) {
                    Log.d("通过回调收到的数据", data);
    
                }
            });
    
            mSendData.send("通过回调类对象调用send方法发送的数据");
    
        }
    }

    结果如下:

  • 相关阅读:
    JS实现在线ps功能
    Vmware 下安装linux虚拟机
    一文了解:Redis主从复制
    一文了解:Redis过期键删除策略
    一文了解:Redis的AOF持久化
    一文了解:Redis的RDB持久化
    一文了解:Redis事务
    一文了解:Redis基础类型
    并发一:Java内存模型和Volatile
    干了这杯java之ThreadLocal
  • 原文地址:https://www.cnblogs.com/zzw1994/p/5055004.html
Copyright © 2020-2023  润新知