java如何以编程方式将按钮添加到自定义视图?
我是Android编程的初学者,我正在通过修改我发现的一些类来开发一个程序here.到目前为止,我有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
方法
任何帮助都将不胜感激,谢谢
注意:我尝试使用XML布局添加了一个按钮,但现在我想使用这个类,并在Main中设置setContentView(new DrawView(this));
。爪哇
# 1 楼答案
不能在视图的
onDraw()
方法中添加其他View
对象,它们在视图类中没有任何addView()
方法要使其正常工作,请使用^{} 扩展DrawView类。现在,您可以在此中添加其他视图。As
addView()
方法属于ViewGroup
类大概