Android 模拟器未正确显示应用程序(Android Studio)

Android Emulator Not Displaying The App Correctly (Android Studio)

我正在制作一个基本的短语应用程序(我在上一个问题中提到过),我把所有的东西都记下来了。但是,模拟器根本无法正确显示应用程序。这是工作室内的预览:

这是模拟器显示的内容:

我的代码中没有任何错误,所有 Android Studio 组件都是最新的。这是怎么回事?这是我的 XML:

<?xml version="1.0" encoding="utf-8"?>
<GridLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_row="0"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="Hello"
        android:onClick="buttonTapped"
        android:id="@+id/button" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="1"
        android:layout_row="0"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="How are you?"
        android:onClick="buttonTapped"
        android:id="@+id/howareyou" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_row="1"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="Good Evening"
        android:onClick="buttonTapped"
        android:id="@+id/goodevening" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="1"
        android:layout_row="1"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="Please"
        android:onClick="buttonTapped"
        android:id="@+id/please" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_row="2"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="My name is..."
        android:onClick="buttonTapped"
        android:id="@+id/mynameis" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="1"
        android:layout_row="2"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="Do you &#10; speak English?"
        android:onClick="buttonTapped"
        android:id="@+id/doyouspeakenglish" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_row="3"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="Welcome"
        android:onClick="buttonTapped"
        android:id="@+id/welcome" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="1"
        android:layout_row="3"
        android:layout_columnWeight="1"
        android:layout_rowWeight="1"
        android:layout_gravity="fill"
        android:text="I live in..."
        android:onClick="buttonTapped"
        android:id="@+id/ilivein" />

</GridLayout>

当布局重力设置为 fill 时,它会填充其容器。这就是它只显示第一个按钮的原因。

可能是当前的模拟器渲染gridlayout有些问题,所以root布局变成了按钮的容器。

我试过你的 xml 文件,它在模拟设备和真实设备上都能完美运行。