回调机制的实现,即细看setOnClickListener怎么运行

引入问题:


Android中常见的设置某某控件(模块)的监听。形如setOnClickListener() 、 OnItemClickListener()等等。这其实就是一个回调机制的实现。

当要自己实现一个 类似于Listener的东西  or  回调  该如何操作呢?



实现方式一:


(1)定义监听接口

public interface DataParseListener {
    
    public void addArrayListDataSet();
    public void finishParse();

}



(2)实现监听接口的方法

    DataParseListener dataParseListener = new DataParseListener() {
        
        @Override
        public void finishParse() {
            // TODO Auto-generated method stub
            Logger.d("finishParse do");
        }
        
        @Override
        public void addArrayListDataSet() {
            // TODO Auto-generated method stub
            Logger.d("addArrayListDataSet do");
        }
    };


(3)设置监听对象生效

    private DataParseListener mDataParseListener = null;

    public void setParseListener(DataParseListener listener) {
        Logger.d("setParseListener run");
        mDataParseListener = listener;
        mLockFlag = false;
        synchronized (mLockFlagObject) {
            mLockFlagObject.notifyAll();
        }
    }


(4)如何回调:当它一运行,实质就调用在(1)中接口实现了。

		mDataParseListener.addArrayListDataSet();
		mDataParseListener.finishParse();








你可能感兴趣的:(回调机制的实现,即细看setOnClickListener怎么运行)