我试图匹配LunarLander的SurfaceView绘图风格的实现。
我开始非常简单,只是想在用户的触摸输入下面绘制圆圈,但我似乎无法绘制任何东西! 我的所有应用都是绿色屏幕(布局xml中视图的背景颜色)。
为了画一些东西,我尝试在整个画布上画一个黑色矩形,一个0,0的圆圈和一个位图图像。这些抽奖都没有成功。它们都被调用,没有抛出异常,但屏幕永远不会从绿色变化。
我最终想要解决这个问题,所以这里是我的代码(减去游戏引擎,此时无关紧要)。
布局:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.jknight.particletoy.view.GameEngineView
android:id="@+id/gameengineview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF66FF33"/>
</FrameLayout>
编辑: 想出来了:
表面视图的布局中不能有背景颜色属性。它渲染过度。