如何在androidstudio中进行布局?

nimxete2  于 2021-07-03  发布在  Java
关注(0)|答案(3)|浏览(386)

我试着做一个如下的活动:这里
问题是,当我启动应用程序时,它不会得到相同的结果。按钮被剪切或文本被剪切。如果我改变一个按钮的位置,所有的东西都会在左上角。我的问题是:我该怎么做才能让一切都得到我想要的职位?我使用了相对布局。也许这就是问题所在?

<?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" >

    <Button
        android:id="@+id/button3"
        android:layout_width="245dp"
        android:layout_height="68dp"
        android:layout_below="@+id/button"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="83dp"
        android:layout_marginTop="26dp"
        android:layout_marginEnd="83dp"
        android:layout_marginBottom="238dp"
        android:text="Info"
        android:textColor="@color/colorPrimary"
        android:textSize="24sp"
        android:textStyle="normal" />

    <Button
        android:id="@+id/button"
        android:layout_width="245dp"
        android:layout_height="68dp"
        android:layout_centerInParent="true"
        android:text="Kartenansicht"
        android:textColor="@color/colorPrimary"
        android:textSize="24sp"
        android:textStyle="normal" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="115dp"
        android:layout_above="@+id/button2"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_marginStart="71dp"
        android:layout_marginTop="112dp"
        android:layout_marginEnd="73dp"
        android:layout_marginBottom="18dp"
        android:text="Um zu überprüfen, ob Sicherheitskameras in der Nähe sind, bitte hier drücken:"
        android:textSize="20sp" />

    <Button
        android:id="@+id/button2"
        android:layout_width="244dp"
        android:layout_height="62dp"
        android:layout_above="@+id/button"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_marginStart="83dp"
        android:layout_marginEnd="84dp"
        android:layout_marginBottom="24dp"
        android:text="Start"
        android:textColor="@color/colorPrimary"
        android:textSize="24sp" />
</RelativeLayout>
eh57zj3b

eh57zj3b1#

如果您想通过拖放来创建设计,那么最好使用约束布局而不是相对布局,但是如果您仍然想使用相对布局,您应该在中间按钮中使用“centerinparent=”true“”,并为上面的按钮设置“layout\u above=“@+id/您的\u centered\u view\u id”和“layout\u below=“@+id/您的\u centered\u view\u id”。

zpf6vheq

zpf6vheq2#

使用constraintlayout,例如,在可以将宽度设置为0dp之后,为每个视图指定一个start和end约束

eqqqjvef

eqqqjvef3#

你的布局一团糟。例如:

android:layout_alignParentStart="true"
    android:layout_alignParentEnd="true"

这两个参数不能共存。对于所需的布局,应使用方向设置为垂直的linearlayout。这样,您所需要做的就是将ui对象1写在另一个对象的下面,然后将它们放在另一个对象的上面。要使它们居中,可以使用重力和布局重力

android:layout_gravity="center"
            android:gravity="center"

就这些。
编辑:只是让你知道,相对布局基本上把任何给定的对象放置在布局的0,0位置。如果创建的对象很少,它们将一个放在另一个上。

相关问题