我發現這個小樣本代碼,做你的手指畫:
http://marakana.com/tutorials/android/2d-graphics-example.html繪圖用手指
下面是一些相關的代碼:
List<Point> points = new ArrayList<Point>();
@Override
public void onDraw(Canvas canvas) {
for (Point point : points) {
canvas.drawCircle(point.x, point.y, 5, paint);
}
}
public boolean onTouch(View view, MotionEvent event) {
Point point = new Point();
point.x = event.getX();
point.y = event.getY();
points.add(point);
invalidate();
Log.d(TAG, "point: " + point);
return true;
}
我一直在尋找通過它,看到他們正在給ArrayList添加點,然後循環遍歷ArrayList,這似乎並不是一個非常優化的方法。有更好的方法還是這是一個好方法?
經過我的三星GS3測試後,我用20的圓圈大小着色了整個屏幕,並且越接近全色,繪製越慢,然後圓圈變得間隔開。
你的問題不是很具體。如果你可以發佈一些代碼會更好。 – NSAddict
你可能會對'onDraw'的教程期待太多。 –
這取決於你想繪製什麼:路徑,圓形,方形等。 – hardartcore