通過回調實現跟隨手指的小球,繪製小球類名爲:DrawView,小球半徑15,畫筆顏色爲紅色,通過重寫onTouchEvent事件實現,佈局文件爲main.xml,
java代碼
public float currentX = 40;
public float currentY = 50;
Paint p = new Paint();
public DrawView(Context context) {
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
// 設置畫筆的顏色
p.setColor(Color.RED);
// 繪製一個小圓(作爲小球)
canvas.drawCircle(currentX, currentY, 15, p);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// 當前組件的currentX、currentY兩個屬性
this.currentX = event.getX();
this.currentY = event.getY();
// 通知改組件重繪
this.invalidate();
// 返回true表明處理方法已經處理該事件
return true;
}
XML佈局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<com.example.experiment3.DrawView
android:layout_height="match_parent"
android:layout_width="match_parent">
</com.example.experiment3.DrawView>
</LinearLayout>
實現截圖