自定义控件的几个注意点
如果自定义View需要设置一个不变的背景图,为了提高效率,你可以在构造方法中直接设置背景图片。无需在onDraw中绘制
Bitmap backgroundBitmap = BitmapFactory.decodeResource(getResources(),
                R.drawable.your_png);
        if (backgroundBitmap != null) {
            setBackgroundDrawable(new BitmapDrawable(backgroundBitmap));
        }
不要在构造方法中获取View的尺寸,因为此时View的w,h都是0.正确的做法为:
@Override
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        super.onSizeChanged(w, h, oldw, oldh);
        // w h is the size of this view
    }
尽量不要在onDraw中反复的new新的对象
未完待续