0

わかりました、どこをクリックしても図形を描画する簡単なアプリを作成しようとしています (私は円を試しています)。私は数回試しましたが、まだ何も機能していません。誰かが以前にこれを行ったことがあると思うので、同様のプロジェクトのチュートリアル/ソース コードへのリンクがあれば、それが役立ちます。私が行き詰まっていると思うのは、スレッドの使用方法と onDraw() 関数の更新方法です。まだ理解していない場合は、私は Android や Java についてはまったくの初心者です。

現在私は持っています:

--Main.java--

    public class MAIN extends Activity {
        CustomDrawableView mCustomDrawableView; 
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            mCustomDrawableView = new CustomDrawableView(this);        
            setContentView(mCustomDrawableView);

        }

//Implement a thread here that would somehow update the view everytime.  Everytime I try this though it doesn't work
    }

--CustomDrawableView.java--

public class CustomDrawableView extends View {
    //private ShapeDrawable mDrawable;
    int x=0;
    int y=0;

    public CustomDrawableView(Context context) {
        super(context);

    }

    protected void onDraw(Canvas canvas) {
        Paint mPaint = new Paint();
        mPaint.setColor(0xffff0000);
        canvas.drawCircle(x, y, 5, mPaint);
    }
}
4

1 に答える 1

1

この単純なものに対して明示的にスレッドを作成する必要はありません。

ビューで、onTouchEvent をオーバーライドし、MotionEvent.getAction をオンにし、ACTION_DOWN のときに x と y を MotionEvent.getX() と getY() に設定し、invalidate() を呼び出します。

于 2011-02-23T03:03:48.937 に答える