1、继承至View
①重写构造
②重写onTouchEvent();
③在上面的方法中调用invalidate(); //它会自动调用onMeasure()和onDraw()
④重写onMeasure()
⑤重写onDraw() //这里用Canvas和Paint还有Matrix画界面,主要用到canvas.drawBitmap(Bitmap bitmap, float left, float top, Paint paint)
⑥对外提供回调方法,比如:
// 对外提供操作的接口
interface OnStateChangedListener {
// 指定开关状态
void onStateChanged(boolean state);
}
// 回调方法 来操作开关
public void setOnStateChangedListener(OnStateChangedListener listener) {
swithStateListener = listener;
}
// 指定开关的默认状态
public void setState(boolean isTurnOn) {
isSwitchOn = isTurnOn;
}