button和GLSurfaceView

我有一个GLSurfaceView,我使用OpenGL显示一些animation。

我现在想要添加一个button到这个视图。 这是如何完成的?

可以做到不涉及XML布局?

Solutions Collecting From Web of "button和GLSurfaceView"

您可以手动构build视图并将其添加到活动的内容视图中。 在你的Activity的onCreate方法中,在你的GLSurfaceView上执行setContentView之后,或者通过XML布局,你可以执行以下操作,在左上angular的GLSurfaceView顶部添加一个button:

Button b = new Button(this); b.setText("Hello World"); this.addContentView(b, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 

如果您希望button位于屏幕上的其他位置,则需要将其添加到布局,然后将该布局添加到内容视图。 要在屏幕中央有一个button,您可以执行以下操作:

 LinearLayout ll = new LinearLayout(this); Button b = new Button(this); b.setText("hello world"); ll.addView(b); ll.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.CENTER_VERTICAL); this.addContentView(ll, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); 

如果你想要在屏幕底部的button,你可以使用Gravity.BOTTOM而不是Gravity.CENTER_VERTICAL等

确保你正在调用return super.onTouch …在你的触摸事件方法中,如果你的GLSurfaceView截取了触摸,否则你的button将不会收到触摸事件。