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();
    }    
}

球被创建并移动,但我似乎无法在任何地方获得“kapabut”按钮。我怎样才能让这个按钮出现,并添加一个onClick方法呢?

任何帮助将不胜感激,谢谢。

PS:我尝试使用 XML 布局添加了一个 Button,但现在我想用这个类来制作它,并setContentView(new DrawView(this));在 Main.java 中设置

4

1 回答 1

0

您不能View在 View 的方法中添加其他对象,它们在 View 类onDraw()中没有任何方法。addView()

为了让它工作,现在扩展你的DrawView类,ViewGroup你可以在其中添加其他视图。AsaddView()方法属于ViewGroupClass。

就像是,

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