1

私は Android プログラミングの初心者で、ここで見つけたいくつかのクラスを変更してプログラムを開発しています。これまでのところDrawView、次のようなクラスがあります。

public class DrawView extends View {
   private Ball ball1;

   private Button kapabut;

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

        ball1 = new Ball(context,R.drawable.ortatop);       

       kapabut=new Button(context);  //here, I cannot seem to add a button.
       kapabut.setVisibility(VISIBLE);
       kapabut.setText("xXx");
    }

    @Override protected void onDraw(Canvas canvas) {
        // move the balls at every canvas draw
        ball1.moveBall();

        //draw the balls on the canvas
        canvas.drawBitmap(ball1.getBitmap(), ball1.x, ball1.y, null);
        // refresh the canvas
        invalidate();
    }    
}

ボールが作成されて動きますが、「カパバット」ボタンがどこにも表示されないようです。onClickこのボタンを表示させ、メソッドも追加するにはどうすればよいですか?

どんな助けでも感謝します、ありがとう。

PS: XML レイアウトを使用してボタンを追加しようとしましたが、このクラスで作成しsetContentView(new DrawView(this));、Main.java に設定したいと思います。

4

1 に答える 1

0

ViewView のメソッドに他のオブジェクトを追加することはできませんonDraw()。それらはaddView()View クラスのメソッドではありません。

それを機能させるには、 DrawViewクラスを拡張してViewGroup、これに他のビューを追加できるようになりました。メソッドはクラスaddView()に属しているため。ViewGroup

何かのようなもの、

public class DrawView extends ViewGroup {
于 2012-08-20T13:10:25.670 に答える