Anroid21-自定义控件

  • 自定义view的代码
public class CustomView extends View {
      //构造方法
     public CustomView(Context context) {
        super(context);
    }

    //从XML加载组件后的回调
    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
    }

    //组件大小该变后的回调
    @Override
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        super.onSizeChanged(w, h, oldw, oldh);
    }

    //回调该方法用来进行测量
    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
    }

    //触发点击事件的时候调用,回调该方法来确定显示的位置
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        return super.onTouchEvent(event);
    }

    //界面刷新的时候调用,重写该方法来绘制view的显示内容
    //注:调用` invalidate();`方法之后会刷新视图
    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
    }
}

你可能感兴趣的:(Anroid21-自定义控件)