Ich habe eine Texteingabe mit Hilfe der Design-Support-Bibliothek erstellt, aber es verhält sich merkwürdig innerhalb der Constraint-Layout Ich legte den Code unten, wie ich das Widget wünschen angezeigt werden und es wird zunächst sowohl im Design-Builder als auch auf dem Gerät korrekt angezeigt. Wenn ich jedoch TextInputLayout
(entweder im Entwurfs- oder im Blueprint-Layout) wähle, hat die EditText
ihre layout_width
von zu 0dp
geändert, was dazu führt, dass sie verschwindet.Layout-Problem mit TextInputLayout als Teil von Constraint-Layout
<android.support.design.widget.TextInputLayout
android:id="@+id/textInputLayout"
android:layout_height="wrap_content"
android:layout_width="0dp"
app:layout_constraintLeft_toLeftOf="@+id/activity_login"
android:layout_marginLeft="16dp"
android:layout_marginStart="16dp"
app:layout_constraintTop_toTopOf="@+id/activity_login"
android:layout_marginTop="16dp"
app:layout_constraintRight_toRightOf="@+id/activity_login"
android:layout_marginRight="16dp"
android:layout_marginEnd="16dp"
app:layout_constraintBottom_toBottomOf="@+id/activity_login"
android:layout_marginBottom="16dp">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/email"
android:layout_weight="1"
android:hint="@string/email"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="11dp"/>
</android.support.design.widget.TextInputLayout>
Was ist dann dein Problem? Scheint so, als ob das richtig funktioniert. –
Leider ist es nicht. Die Eigenschaft layout_width EditText wird weiterhin auf "0dp" gesetzt. Dies tritt jedes Mal auf, wenn eine gleichgeordnete oder übergeordnete Ansicht bearbeitet wird. –
Ja, das ist das genaue Verhalten. Die 'EditText'-Breite wird derzeit als' match_parent' festgelegt. Wann immer eine Änderung am Elternlayout den 'EditText' in ihm beeinflussen sollte. –