4

Androidで基本的な描画を始めたばかりです。いくつかの単純な形状から始めていますが、いくつか問題があります。キャンバスの中心に円を描きたいです。いくつかの例を見ましたが、うまくいかないようです。どの変数がどこに行くのかよくわからないからだと思います。

画面の中央に円を描く正しい方法を誰か説明してください。これが私のコードです:

public class Circle extends View{

int width = this.getWidth();
int height = this.getHeight();

public Circle(Context context) {
    super(context);
    setFocusable(true);

}
protected void onDraw(Canvas canvas){
    canvas.drawColor(Color.CYAN);
    Paint paint = new Paint();
    paint.setStyle(Paint.Style.FILL);
    //canvas.drawCircle(100, 100, 50, paint);
    canvas.drawCircle(width/2, height/2, 100, paint);

    Display disp = ((WindowManager)this.getContext().getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();

    float radius = 0;//Radius caused an error so I initialized this variable

    canvas.drawCircle(disp.getWidth()/2, disp.getHeight()/2, radius, paint);

}

}

4

3 に答える 3

-1

私たちにとって非常に役立つリンクがいくつかあります。それらがあなたや他の人にとって役立つことを願っています.

  1. https://github.com/swapgo20/Android-Hand-Drawing
  2. https://github.com/codepath/android_guides/wiki/Basic-Painting-with-Views
  3. https://github.com/Korilakkuma/CanvasView

上記のリンクがキャンバスに図形を描くのに非常に役立つことを願っています.

3 番目のリンクを使用し、Android の Path クラス ( http://developer.android.com/reference/android/graphics/Path.html ) のみを使用して図形を描画することをお勧めします。

于 2015-02-01T14:32:07.520 に答える