首页 > 解决方案 > 尝试通过视图(小 v)标签包含 SurfaceView,但应用程序不断崩溃

问题描述

我在 java 中使用了一个 SurfaceView,它本身就可以正常工作(在此处找到),现在我正在尝试将它添加到 xml 中,以便我可以在其上包含按钮。我正在尝试通过视图标签(带有一点“v”)来执行此操作,但游戏在尝试启动时会崩溃。根据我的理解,视图标签应该让我包含一个我在其他地方编码的通用视图。我是否误解了它的目的,或者我只是在做完全错误的事情,还是完全是另外一件事?

<?xml version="1.0" encoding="utf-8"?>

<androidx.constraintlayout.widget.ConstraintLayout

xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/frameLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".GameActivity"
>

<view
    class="com.example.snakegame.GameActivity$SnakeView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clickable="false"
    android:visibility="visible"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<Button
    android:id="@+id/button8"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="170dp"
    android:layout_marginLeft="170dp"
    android:layout_marginTop="542dp"
    android:layout_marginEnd="170dp"
    android:layout_marginRight="170dp"
    android:onClick="upButton"
    android:text="UP"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<Button
    android:id="@+id/button9"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="590dp"
    android:layout_marginEnd="82dp"
    android:layout_marginRight="82dp"
    android:layout_marginBottom="109dp"
    android:onClick="rightButton"
    android:text="RIGHT"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<Button
    android:id="@+id/button10"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="170dp"
    android:layout_marginLeft="170dp"
    android:layout_marginEnd="170dp"
    android:layout_marginRight="170dp"
    android:layout_marginBottom="61dp"
    android:onClick="downButton"
    android:text="DOWN"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent" />

<Button
    android:id="@+id/button11"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="82dp"
    android:layout_marginLeft="82dp"
    android:layout_marginTop="590dp"
    android:layout_marginBottom="109dp"
    android:onClick="leftButton"
    android:text="LEFT"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />


   </androidx.constraintlayout.widget.ConstraintLayout>

标签: javaxmlandroid-studio

解决方案


推荐阅读