J'utilise ConstraintLayout où je vais montrer comme ci-dessousConstraintLayout, lorsque la vue dépendante de la contrainte a disparu, le point de vue de la mise en page se comportent bizarrement
Je voudrais cacher First
(en utilisant disparu), et qui le point de vue j'attendre d'être comme ci-dessous (où ElasticBody s'étendra sur d'utiliser l'espace First
de vue original ainsi.
Cependant, whe n J'ai défini First
à gone
, ma vue s'avère être comme ci-dessous (toutes les images à partir de la vue Android Studio Design). Mon Elastic Body
est également manquant, et la hauteur s'est étirée bizarrement.
Mon code de mise en page comme ci-dessous
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="16dp">
<TextView
android:id="@+id/txt_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#0ff"
android:text="First"
android:visibility="gone"
android:textSize="26sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/txt_body"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/txt_body"
android:layout_width="0dp"
android:background="#f0f"
android:layout_height="wrap_content"
android:text="Elastic Body"
android:textSize="26sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/txt_tail"
app:layout_constraintStart_toEndOf="@+id/txt_first"
app:layout_constraintTop_toBTopOf="parent" />
<TextView
android:id="@+id/txt_tail"
android:background="#ff0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tail"
android:textSize="26sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/txt_body"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
(Remarque, si vous supprimez le gone
, vous obtenez la première vue de l'image). Pourquoi est-ce vrai? Comment est-ce que je peux réparer où First
est parti, je pourrais le Elastic Body
étirer correctement? P/s: Je sais comment faire dans LinearLayout et RelativeLayout ... mais je me demande si c'est une limitation sur ConstraintLayout?
Merci. Intéressant, enlever 'app: layout_constraintStart_toEndOf =" @ + id/txt_body "' de la 'queue' aide. Upvote votre réponse. Pouvez-vous élaborer la logique derrière? Merci! (Je ne sais pas qui ne vote pas, ils devraient au moins donner une raison ...) – Elye
Après avoir réfléchi un moment, je pense que je comprends la logique. Je suis le tien comme réponse. Merci! (Faire une surexcitation de ma question si vous pensez que cela aide les autres) – Elye
s'il vous plaît donnez-moi la raison du vote à la baisse. –