CallBack回调的总结

来源:互联网 发布:2017云计算安全问题 编辑:程序博客网 时间:2024/06/11 18:07
/*比如说这是一个用于监听字母改变的监听器,        当字母发生改变时,会回调onLetterChange方法*/

/那么:在回调类中/

  1. /*先写一个接口:1.里面包含字母改变的抽象方法
    2.selectedIndex即是改变后的字母下标作为参数 从这个类的其他地方传进来*/
    public interface OnLetterChangeListener{
    void onLetterChange(int selectedIndex);
    }
  2. /创建一个抽象接口的成员对象(因为该对象可能会在这个类的不同方法内部调用,所以创建成员的)/
    private OnLetterChangeListener letterChangeListener;
  3. /此时,letterChangeListener还是一个空对象,这里对外提供一个公共方法,对该对象进行赋值/
    public void setOnLetterChangeListener(OnLetterChangeListener letterChangeListener){
    this.letterChangeListener = letterChangeListener;
    }
  4. /*这里是一个触摸监听事件,在本事件内部:
    1.会先判断letterChangeListener对象是否为空,
    2.不为空时,调用letterChangeListener对象的onLetterChange方法
    3.在onLetterChange方法内部传入改变的字母下标*/
    @Override
    public boolean onTouchEvent(MotionEvent event) {
    int currentSelectedIndex = (int) (event.getY()/mSingleHight);
    if(letterChangeListener != null){
    //回调
    letterChangeListener.onLetterChange(currentSelectedIndex);
    }
    invalidate();
    return true;
    }

/于是:在其他地放调用该监听器/
*.setOnLetterChangeListener(new OnLetterChangeListener() {
@Override
public void onLetterChange(int selectedIndex) {
/这里,监听到改变的字母下标会以参数的形式传进onLetterChange方法中请愉快的使用/
}
});

1 1
原创粉丝点击