我有玩游戏的游戏界面。现在我需要在我的图像上使用一些按钮。但我需要使用XML布局文件在游戏视图中添加按钮。我使用了XML布局,但我得到了
Error Inflating class com.name.company.surfaceview.GameView
代码:
public class MainActivity extends Activity {
GameView GameView;
Button btnStart;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//for no title
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//setContentView(new GameView(this));
setContentView(R.layout.activity_main);
GameView = (GameView)findViewById(R.id.gameView);
btnStart = (Button)findViewById(R.id.btnStart);
}
XML布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<view class="com.name.company.surfaceview$GameView"
android:id="@+id/gameView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<LinearLayout android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom">
<Button
android:id="@+id/btnStart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button" />
</LinearLayout>
</RelativeLayout>
答案 0 :(得分:0)
我认为您的Java
代码似乎没有问题。 但,可能是您的XML
文件存在问题。将XML
文件替换为此文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<view class="com.name.company.surfaceview$GameView"
android:id="@+id/gameView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<Button
android:id="@+id/btnStart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="button"/>
</LinearLayout>
如果此代码无效,则问题出在class
com.name.company.surfaceview$GameView
上。再次尝试使用相同的代码,但将button
项放在class
项上方。我希望它有所帮助