Android应用程序布局在物理设备上崩溃

Android应用程序布局在物理设备上崩溃,android,xml,android-layout,Android,Xml,Android Layout,Android Studio中的布局和元素看起来正是我想要的样子,但一旦我在设备上安装了APK,布局就会崩溃。所有视图一个接一个地折叠,这与Android Studio预览中显示的不同 我使用线性布局和相对布局。我在1-2年前使用过android studio,当时没有约束布局,现在每次创建布局时都会出现约束错误 XML主活动(仅一个): 我做错了什么?您似乎不熟悉ConstraintLayout 没关系。当您不想使用时,不要使用ConstraintLayout。没有必要使用这个 您需要做的

Android Studio中的布局和元素看起来正是我想要的样子,但一旦我在设备上安装了APK,布局就会崩溃。所有视图一个接一个地折叠,这与Android Studio预览中显示的不同

我使用线性布局和相对布局。我在1-2年前使用过android studio,当时没有约束布局,现在每次创建布局时都会出现约束错误

XML主活动(仅一个):



我做错了什么?

您似乎不熟悉
ConstraintLayout

没关系。当您不想使用时,不要使用
ConstraintLayout
。没有必要使用这个

您需要做的只是将根布局更改为
LinearLayout
RelativeLayout
,或根据您的要求使用的任何其他布局

我给你在这种情况下应该使用的代码。在该代码中,我使用
RelativeLayout
作为根布局,因为您使用的是
layout\u alignParentBottom
like属性

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout
    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:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.companys.appx.appx.MainActivity">

    <LinearLayout
        android:id="@+id/linearLayoutTop"
        android:layout_width="0dp"
        android:layout_height="101dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginBottom="11dp"
        android:orientation="vertical">

        <RelativeLayout
            android:id="@+id/relativeLayoutTop"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/colorLightGrey">

            <LinearLayout
                android:id="@+id/linearLayoutTopImage"
                android:layout_width="110dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/iridumNEXT40_50"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentStart="true"
                    android:layout_alignParentTop="true"
                    android:layout_weight="1"
                    android:adjustViewBounds="false"
                    android:cropToPadding="false"
                    android:scaleType="fitStart"
                    app:srcCompat="@mipmap/iridiummission5" />
            </LinearLayout>

            <TextView
              android:id="@+id/iridium5Text"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentTop="true"
              android:layout_marginTop="12dp"
              android:layout_toEndOf="@+id/linearLayoutTopImage"
              android:layout_toRightOf="@+id/linearLayoutTopImage"
              android:fontFamily="sans-serif-condensed"
              android:text="Iridium NEXT 40 50"
              android:textAlignment="textStart"
              android:textAllCaps="false"
              android:textAppearance="@style/TextAppearance.AppCompat.Body1"
              android:textColor="@color/colorRedDragon"
              android:textSize="16sp"
              android:textStyle="bold|italic" />

        </RelativeLayout>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayoutCenter"
        android:layout_width="400dp"
        android:layout_height="101dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:orientation="vertical">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="101dp"
            android:background="@color/colorLightGrey"
            tools:layout_editor_absoluteX="8dp"
            tools:layout_editor_absoluteY="109dp">

            <LinearLayout
                android:id="@+id/linearLayoutCenterImage"
                android:layout_width="110dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/crs14"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentStart="true"
                    android:layout_alignParentTop="true"
                    android:layout_weight="1"
                    android:scaleType="fitStart"
                    app:srcCompat="@mipmap/crs14" />
            </LinearLayout>

            <TextView
              android:id="@+id/crs14Text"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentTop="true"
              android:layout_marginTop="16dp"
              android:layout_toEndOf="@+id/linearLayoutCenterImage"
              android:layout_toRightOf="@+id/linearLayoutCenterImage"
              android:fontFamily="sans-serif-condensed"
              android:text="SpaceX NASA - CRS-14"
              android:textAlignment="center"
              android:textAllCaps="false"
              android:textAppearance="@style/TextAppearance.AppCompat.Body1"
              android:textColor="@color/colorRedDragon"
              android:textSize="18sp"
              android:textStyle="bold|italic" />

        </RelativeLayout>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayoutCenterBottom"
        android:layout_width="400dp"
        android:layout_height="101dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:orientation="vertical">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="101dp"
            android:background="@color/colorLightGrey"
            tools:layout_editor_absoluteX="8dp"
            tools:layout_editor_absoluteY="109dp">

            <LinearLayout
                android:id="@+id/linearLayoutCenterBottomImage"
                android:layout_width="110dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/bhu"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentStart="true"
                    android:layout_alignParentTop="true"
                    android:layout_weight="1"
                    android:scaleType="fitCenter"
                    app:srcCompat="@mipmap/spacexlogo"
                    tools:layout_editor_absoluteX="0dp"
                    tools:layout_editor_absoluteY="101dp" />
            </LinearLayout>

            <TextView
               android:id="@+id/bhuText"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_alignParentTop="true"
               android:layout_marginTop="12dp"
               android:layout_toEndOf="@+id/linearLayoutCenterBottomImage"
               android:layout_toRightOf="@+id/linearLayoutCenterBottomImage" 
               android:fontFamily="sans-serif-condensed"
               android:text="Bangabandhu-1"
               android:textAlignment="center"
               android:textAllCaps="false"
               android:textAppearance="@style/TextAppearance.AppCompat.Body1"
               android:textColor="@color/colorRedDragon"
               android:textSize="18sp"
               android:textStyle="bold|italic" />

        </RelativeLayout>
    </LinearLayout>

</RelativeLayout>

如果代码中有任何错误(打字错误),请进行更改

唯一的一点是使用
RelativeLayout
作为根布局,而不是
ConstraintLayout

在上面的代码中,我从第一个
LinearLayout
中删除了所有
ConstraintLayout
属性,因为根布局不再是
ConstraintLayout


这个技巧可以解决这个问题。出现此问题的原因是
containtlayout
有自己的规则,而您没有遵守这些规则。但是现在,由于您更改了根布局,问题将不再存在。

您的布局文件不完整,您似乎有一个约束布局,但无法在任何地方打开它。很抱歉,此部分被切掉了:
您是否成功完成了此操作?
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout
    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:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.companys.appx.appx.MainActivity">

    <LinearLayout
        android:id="@+id/linearLayoutTop"
        android:layout_width="0dp"
        android:layout_height="101dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginBottom="11dp"
        android:orientation="vertical">

        <RelativeLayout
            android:id="@+id/relativeLayoutTop"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/colorLightGrey">

            <LinearLayout
                android:id="@+id/linearLayoutTopImage"
                android:layout_width="110dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/iridumNEXT40_50"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentStart="true"
                    android:layout_alignParentTop="true"
                    android:layout_weight="1"
                    android:adjustViewBounds="false"
                    android:cropToPadding="false"
                    android:scaleType="fitStart"
                    app:srcCompat="@mipmap/iridiummission5" />
            </LinearLayout>

            <TextView
              android:id="@+id/iridium5Text"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentTop="true"
              android:layout_marginTop="12dp"
              android:layout_toEndOf="@+id/linearLayoutTopImage"
              android:layout_toRightOf="@+id/linearLayoutTopImage"
              android:fontFamily="sans-serif-condensed"
              android:text="Iridium NEXT 40 50"
              android:textAlignment="textStart"
              android:textAllCaps="false"
              android:textAppearance="@style/TextAppearance.AppCompat.Body1"
              android:textColor="@color/colorRedDragon"
              android:textSize="16sp"
              android:textStyle="bold|italic" />

        </RelativeLayout>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayoutCenter"
        android:layout_width="400dp"
        android:layout_height="101dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:orientation="vertical">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="101dp"
            android:background="@color/colorLightGrey"
            tools:layout_editor_absoluteX="8dp"
            tools:layout_editor_absoluteY="109dp">

            <LinearLayout
                android:id="@+id/linearLayoutCenterImage"
                android:layout_width="110dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/crs14"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentStart="true"
                    android:layout_alignParentTop="true"
                    android:layout_weight="1"
                    android:scaleType="fitStart"
                    app:srcCompat="@mipmap/crs14" />
            </LinearLayout>

            <TextView
              android:id="@+id/crs14Text"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentTop="true"
              android:layout_marginTop="16dp"
              android:layout_toEndOf="@+id/linearLayoutCenterImage"
              android:layout_toRightOf="@+id/linearLayoutCenterImage"
              android:fontFamily="sans-serif-condensed"
              android:text="SpaceX NASA - CRS-14"
              android:textAlignment="center"
              android:textAllCaps="false"
              android:textAppearance="@style/TextAppearance.AppCompat.Body1"
              android:textColor="@color/colorRedDragon"
              android:textSize="18sp"
              android:textStyle="bold|italic" />

        </RelativeLayout>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayoutCenterBottom"
        android:layout_width="400dp"
        android:layout_height="101dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:orientation="vertical">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="101dp"
            android:background="@color/colorLightGrey"
            tools:layout_editor_absoluteX="8dp"
            tools:layout_editor_absoluteY="109dp">

            <LinearLayout
                android:id="@+id/linearLayoutCenterBottomImage"
                android:layout_width="110dp"
                android:layout_height="match_parent"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/bhu"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentStart="true"
                    android:layout_alignParentTop="true"
                    android:layout_weight="1"
                    android:scaleType="fitCenter"
                    app:srcCompat="@mipmap/spacexlogo"
                    tools:layout_editor_absoluteX="0dp"
                    tools:layout_editor_absoluteY="101dp" />
            </LinearLayout>

            <TextView
               android:id="@+id/bhuText"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_alignParentTop="true"
               android:layout_marginTop="12dp"
               android:layout_toEndOf="@+id/linearLayoutCenterBottomImage"
               android:layout_toRightOf="@+id/linearLayoutCenterBottomImage" 
               android:fontFamily="sans-serif-condensed"
               android:text="Bangabandhu-1"
               android:textAlignment="center"
               android:textAllCaps="false"
               android:textAppearance="@style/TextAppearance.AppCompat.Body1"
               android:textColor="@color/colorRedDragon"
               android:textSize="18sp"
               android:textStyle="bold|italic" />

        </RelativeLayout>
    </LinearLayout>

</RelativeLayout>