【发布时间】:2012-12-24 15:04:00
【问题描述】:
对于我的游戏,我正在考虑使用 RelativeLayout 在我的 GLSurfaceView 之上绘制 UI 元素(用于显示已用时间的 TextView、用于暂停/重新启动游戏的按钮)...
到目前为止,我自己直接将所有 UI 元素绘制到 SurfaceView,但考虑到 Android UI 提供的广泛选项(例如更改字体和颜色的字体),我决定使用它。
问题:
- 在
GLSurfaceView之上绘制 UI 元素是一种好习惯,还是直接将所有 UI 内容自己绘制到GLSurfaceView更好? - 我将使用
runOnUiThread()方法定期(每16 毫秒)更新UI 元素的内容(比如TextView)...这样不好吗? - 我的游戏会受到强制关闭的影响吗?
这是我用来设置RelativeLayout的测试java代码...glView是GLSurfaceView实例。
rl = new RelativeLayout(this);
rl.addView(glView);
tv = new TextView(this);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.ALIGN_TOP);
tv.setLayoutParams(lp);
tv.setText("FPS: 0");
tv.setBackgroundColor(0x4060ff70);
rl.addView(tv);
setContentView(rl);
【问题讨论】:
标签: android glsurfaceview