127

ここに画像の説明を入力Android Studio 2.2 の新しいレイアウト エディターは、EditText やボタンなどのビューでこのエラーを表示し続けます。親切に助けてください。また、新しい制約レイアウトのオンボーディングに役立つリンクをいただければ幸いです。

コード:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    android:id="@+id/activity_main"
    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.set.email.MainActivity"
    tools:layout_editor_absoluteX="0dp"
    tools:layout_editor_absoluteY="81dp">

    <TextView
        android:text="To:"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        tools:layout_editor_absoluteX="7dp"
        tools:layout_editor_absoluteY="4dp"
        android:id="@+id/textTo"/>

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:inputType="textEmailAddress"
        android:ems="10"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="24dp"
        android:id="@+id/editTo"
        android:textAppearance="@android:style/TextAppearance.DeviceDefault.Medium"/>

    <EditText
        android:layout_width="384dp"
        android:layout_height="42dp"
        android:inputType="textPersonName"
        android:ems="10"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="94dp"
        android:id="@+id/editSubject"
        android:textAppearance="@android:style/TextAppearance.DeviceDefault.Medium"/>

    <EditText
        android:layout_width="384dp"
        android:layout_height="273dp"
        android:inputType="textPersonName"
        android:ems="10"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="179dp"
        android:id="@+id/editMessage"
        app:layout_constraintLeft_toLeftOf="@+id/activity_main"
        tools:layout_constraintLeft_creator="50"
        android:textAppearance="@android:style/TextAppearance.DeviceDefault.Medium"/>

    <Button
        android:text="Send"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        tools:layout_editor_absoluteX="140dp"
        tools:layout_editor_absoluteY="454dp"
        android:id="@+id/btnSend"
        app:layout_constraintLeft_toLeftOf="@+id/editMessage"
        tools:layout_constraintLeft_creator="0"
        app:layout_constraintRight_toRightOf="@+id/activity_main"
        android:layout_marginEnd="16dp"
        tools:layout_constraintRight_creator="0"
        android:textAppearance="@android:style/TextAppearance.DeviceDefault.Medium"/>


</android.support.constraint.ConstraintLayout>
4

12 に答える 12

99

Android Studio v3 以降では、Infer Constraint がドロップダウンから削除されました。

デザイン プレビューの上にあるツールバー メニューの魔法の杖のアイコンを使用します。「制約を推測」ボタンがあります。このボタンをクリックすると、テキスト フィールドにいくつかの行が自動的に追加され、赤い線が削除されます。

ここに画像の説明を入力

于 2018-05-13T17:03:12.127 に答える
88

制約レイアウトは、レイアウト階層を減らし、レイアウトのパフォーマンスを向上させることを目的としています (技術的には、さまざまな画面サイズに合わせて変更する必要はありません。オーバーラップはなく、同じ制約を持つタブだけでなく、モバイルでもチャームのように機能します)。方法は次のとおりです。新しいレイアウト エディタを使用している場合、上記のエラーは解消されます。

ここに画像の説明を入力

小さな円をクリックし、円が緑色に変わるまで左にドラッグして、左の制約を追加します (x dp などの数値を指定します。下に別のビューがある場合は、他の側面でこれを繰り返し、下部の制約を空白のままにします)。 . ここに画像の説明を入力

編集:開発者サイトによると、レイアウトに配置するときにすべてのビューに制約を追加する代わりに、各ビューを希望の位置に移動してから、[制約を推測] をクリックして制約を自動的に作成できます。詳細はこちら

于 2016-06-22T07:09:22.567 に答える
1

たとえば、私はこれを持っています

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

このように RelativeLayout レイアウトを使用します

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
于 2019-05-15T16:26:52.337 に答える
-6

に変更androidx.constraintlayout.widget.ConstraintLayoutする必要がありRelativeLayoutます。

于 2020-04-11T12:39:36.203 に答える