【发布时间】:2023-12-19 21:43:01
【问题描述】:
我有两个Views,用来在屏幕上排列一些buttons。我看到结果的屏幕尺寸是横向模式下的 Moto G - 640dp * 360dp。问题是 - buttons 正在根据带有 id=center_parent 的视图而不是带有 id=left_corner 的视图来排列它们
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<View android:id="@+id/center_parent"
android:layout_centerInParent="true"
android:layout_width="0dp"
android:layout_height="0dp"/>
<View android:id="@+id/left_corner"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_toLeftOf="@+id/center_parent"
android:layout_marginRight="165dp"
android:layout_above="@+id/center_parent"
android:layout_marginBottom="150dp"
android:layout_alignParentTop="true"/>"
<Button android:id="@+id/btn1"
android:layout_height="20dp"
android:layout_width="20dp"
android:padding="0dp"
android:layout_toRightOf="@+id/left_corner"
android:layout_marginLeft="165dp"
android:layout_below="@+id/left_corner"
android:layout_marginTop="5dp"
android:text="1"
android:textColor="@android:color/black"
android:background="@drawable/star"/>
<Button android:id="@+id/btn2"
android:layout_height="20dp"
android:layout_width="20dp"
android:padding="0dp"
android:layout_toRightOf="@+id/left_corner"
android:layout_marginLeft="330dp"
android:layout_below="@+id/left_corner"
android:layout_marginTop="171dp"
android:text="2"
android:textColor="@android:color/black"
android:background="@drawable/star"/>
<Button android:id="@+id/btn3"
android:layout_height="20dp"
android:layout_width="20dp"
android:padding="0dp"
android:layout_toRightOf="@+id/left_corner"
android:layout_marginLeft="292dp"
android:layout_below="@+id/left_corner"
android:layout_marginTop="171dp"
android:text="3"
android:textColor="@android:color/black"
android:background="@drawable/star"/>
<Button android:id="@+id/btn4"
android:layout_height="20dp"
android:layout_width="20dp"
android:padding="0dp"
android:layout_toRightOf="@+id/left_corner"
android:layout_marginLeft="292dp"
android:layout_below="@+id/left_corner"
android:layout_marginTop="292dp"
android:text="4"
android:textColor="@android:color/black"
android:background="@drawable/star"/>
</RelativeLayout>!
附件是它在屏幕上的外观图像。尽管箭头显示是使用 left_corner 测量的,但事实并非如此。如果我将buttons中的left_corner替换为center_parent,同时排列结果是一样的。
The marked arrow is left_corner
我找到了替代方案。所以替代方案不是我想要的。我很想学习对此的解释。
【问题讨论】:
标签: android xml android-layout views android-relativelayout