簡體   English   中英

約束布局總是在左上角

[英]Constraint layout always alinging to top left corner

我試圖在三列中添加一些 EditTexts。 但我得到的只是這個。 如果不在設計編輯器中選擇它們,您甚至無法看到它們。 我嘗試單獨添加它們並將約束設置為我 go 並添加所有它們並在此之后設置約束。 這些都沒有幫助。 我迷路了,我認為約束的布局應該很容易創建:/

一切合並,沒有寬度和高度

在此處輸入圖像描述

無 select

在此處輸入圖像描述

這是約束布局:

androidx.constraintlayout.widget.ConstraintLayout
            android:id="@+id/karta"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

        <EditText
                android:id="@+id/hpTmp"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Tmp HP"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                android:visibility="visible"
                app:layout_constraintEnd_toEndOf="@id/hpMax"
                app:layout_constraintStart_toEndOf="parent"
                app:layout_constraintTop_toTopOf="@id/Class" />

        <EditText
                android:id="@+id/hpMax"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Max HP"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toEndOf="@id/hpNow"
                app:layout_constraintStart_toStartOf="@id/hpTmp"
                app:layout_constraintTop_toTopOf="@id/Race" />

        <EditText
                android:id="@+id/hpNow"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Current HP"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="@id/hpMax"
                app:layout_constraintTop_toTopOf="@id/Level" />

        <EditText
                android:id="@+id/Class"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Klasa"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toEndOf="@id/Race"
                app:layout_constraintStart_toEndOf="parent"
                app:layout_constraintTop_toTopOf="@id/Alignment" />

        <EditText
                android:id="@+id/Race"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Rasa"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toStartOf="@id/Level"
                app:layout_constraintStart_toEndOf="@id/Class"
                app:layout_constraintTop_toTopOf="@id/Proficiency" />

        <EditText
                android:id="@+id/Level"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Poziom"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toStartOf="parent"
                app:layout_constraintStart_toStartOf="@id/Race"
                app:layout_constraintTop_toTopOf="@id/Background" />

        <EditText
                android:id="@+id/Alignment"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Alignment"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toStartOf="@id/Proficiency"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent" />

        <EditText
                android:id="@+id/Proficiency"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Proficiency"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toStartOf="@id/Background"
                app:layout_constraintStart_toEndOf="@id/Alignment"
                app:layout_constraintTop_toTopOf="parent" />

        <EditText
                android:id="@+id/Background"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginStart="4dp"
                android:layout_marginTop="4dp"
                android:layout_marginEnd="4dp"
                android:enabled="true"
                android:focusable="false"
                android:hint="Background"
                android:inputType="text"
                android:singleLine="true"
                android:tag="staty"
                android:textSize="14sp"
                app:layout_constraintEnd_toStartOf="parent"
                app:layout_constraintStart_toEndOf="@+id/Proficiency"
                app:layout_constraintTop_toTopOf="parent" />

    </androidx.constraintlayout.widget.ConstraintLayout>

將 android:layout_width="0dp" 更改為 android:layout_width="wrap_content" 或 android:layout_width="match_parent"

我建議你了解更多關於約束的知識,你沒有安靜地使用它

app:layout_constraintStart_toEndOf="parent"

您從 xml 代碼中看到這一行,它只會將您的視圖移出屏幕,而應該是 app:layout_constraintStart_toStartOf="parent"

將您的 xml 代碼更改為:

<?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"
    android:id="@+id/karta"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom">

    <EditText
        android:id="@+id/hpTmp"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Tmp HP"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        android:visibility="visible"
        app:layout_constraintEnd_toStartOf="@id/hpMax"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintBottom_toTopOf="@id/Class" />

    <EditText
        android:id="@+id/hpMax"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Max HP"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toStartOf="@id/hpNow"
        app:layout_constraintStart_toEndOf="@id/hpTmp"
        app:layout_constraintBottom_toTopOf="@id/Race" />

    <EditText
        android:id="@+id/hpNow"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Current HP"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@id/hpMax"
        app:layout_constraintBottom_toTopOf="@id/Level" />

    <EditText
        android:id="@+id/Class"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Klasa"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toStartOf="@id/Race"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintBottom_toTopOf="@id/Alignment" />

    <EditText
        android:id="@+id/Race"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Rasa"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toStartOf="@id/Level"
        app:layout_constraintStart_toEndOf="@id/Class"
        app:layout_constraintBottom_toTopOf="@id/Proficiency" />

    <EditText
        android:id="@+id/Level"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Poziom"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@id/Race"
        app:layout_constraintBottom_toTopOf="@id/Background" />

    <EditText
        android:id="@+id/Alignment"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Alignment"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toStartOf="@id/Proficiency"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintBottom_toBottomOf="parent" />

    <EditText
        android:id="@+id/Proficiency"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Proficiency"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toStartOf="@id/Background"
        app:layout_constraintStart_toEndOf="@id/Alignment"
        app:layout_constraintBottom_toBottomOf="parent" />

    <EditText
        android:id="@+id/Background"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="4dp"
        android:layout_marginTop="4dp"
        android:layout_marginEnd="4dp"
        android:enabled="true"
        android:focusable="false"
        android:hint="Background"
        android:inputType="text"
        android:singleLine="true"
        android:tag="staty"
        android:textSize="14sp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toEndOf="@+id/Proficiency"
        app:layout_constraintBottom_toBottomOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

結果:

在此處輸入圖片說明

將約束視為 A 的給定邊緣附加/對齊到 B 的給定邊緣。 因此,例如, app:layout_constraintStart_toEndOf約束意味着 A 的起始邊緣附加/對齊到 B 的結束邊緣。

在使用布局編輯器之前,最好先在 xml 中編寫代碼。 這樣,你就會知道它是如何工作的。

對我來說,當我單擊“強制刷新布局”時,它起作用了。 您只需按“R”按鈕即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM