2

私はAndroidに比較的慣れておらず、グラフィックスにも非常に慣れていません。画面上に円を描いてドラッグすることもできますが、移動中に円が大きくなります (半径は増加し続けます) が、画面に触れただけでは円は大きくなりません。これは MotionEvent が原因だと思います。

基本的に、私がやりたいことは、画面がタッチされるたびに円のサイズが大きくなり、ユーザーが指を動かすと円の中心に対して移動し、指を離すと元の半径にリセットすることです。どんなアドバイスも素晴らしいでしょう、または誰かがこれをカバーするチュートリアルを知っていれば、それも素晴らしいでしょう. ありがとう。

4

3 に答える 3

3

onTouchEvent メソッドで、getActionMasked(); を使用してイベントのタイプを確認します。

int eventType = event.getActionMasked();
if(eventType == MotionEvent.ACTION_DOWN)
   growCircle();
else if(eventType == MotionEvent.ACTION_UP)
  returnCircleToNormal();
于 2012-06-10T06:48:37.527 に答える
2

ええと...あなたができることは、オーバーライドonDraw()して、提供されたキャンバスに直接描画することですcanvas.drawBitmap(bitmap, src, dst, paint)

引数の説明は次のとおりです。

  • bitmapは使用するビットマップです
  • srcRect、ビットマップのどの部分を使用するかを選択できる変数です...nullビットマップ全体を描画する場合にのみ使用します
  • dstRectは、ビットマップを描画するキャンバス上の場所を表す別の変数です。長方形のポイントを本来あるべき場所から上に設定すると、ビットマップも拡大されます。
  • 最後に、ペイントを nullに設定するだけです
于 2012-06-10T06:56:11.573 に答える