1. Percent Abmessungen
Das Standardverhalten der Widgets der Breite 0DP (oder match_constraint) (konfigurierbar durch die layout_constraintWidth_default Eigenschaft) verteilt wird. In ConstraintLayout 1.0.x hatten wir die Wahl, es in den Zeilenumbruch zu ändern, und in 1.1.x haben wir einen neuen Wert, Prozent, mit dem wir ein Widget so einstellen können, dass es einen bestimmten Prozentsatz des verfügbaren Platzes einnimmt.
<!-- the widget will take 40% of the available space -->
app:layout_constraintWidth_default="percent"
app:layout_constraintWidth_percent="0.4"
2. Barrieren
Von diesem neuen Widget, haben wir einige Beispiele von ConstraintLayout.com. Barrieren verhindern, dass ein oder mehrere Widgets die Barriere umgehen. Wenn dies geschieht, bewegt sich die Barriere selbst und vermeidet, dass das/die Widget (s) darüber platziert werden. Im folgenden Beispiel kann die Endeigenschaft von text1 und text2 die Barriere nicht umgehen. Wenn dies auftritt, bewegt sich die Barriere selbst nach rechts (oder nach links, wenn in einem RTL-Layout). Dies ist insbesondere bei verschiedenen Widget-Größen, abhängig von einer Konfiguration oder Internationalisierung, eine Handvoll.
<android.support.constraint.ConstraintLayout...>
<TextView
android:id=”@+id/text1" ... />
<TextView
android:id=”@+id/text2" ... />
<android.support.constraint.Barrier
android:id=”@+id/barrier”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
app:barrierDirection=”end” <!-- start, top, bottom, right... -->
app:constraint_referenced_ids=”text1,text2" />
<TextView
android:id=”@+id/text3"
...
app:layout_constraintStart_toEndOf=”@+id/barrier” />
</android.support.constraint.ConstraintLayout>
3. Gruppe
Gruppen, wie die Richtlinien, sind Widgets mit Größe 0. Aber Group hilft eine Aktion auf eine Reihe von Widgets anzuwenden. Der häufigste Fall besteht darin, die Sichtbarkeit einer Sammlung von Widgets zu steuern. Bei diesem Szenario bestand die gängigste Lösung darin, sich eine Liste oder einen Satz von Ansichten innerhalb der Aktivität oder des Fragments anzulegen oder sogar eine ViewGroup hinzuzufügen und alle Ansichten darin einzufügen, um die Sichtbarkeit des Containers zu steuern. Jetzt müssen Sie nur ihre IDs zur Gruppe hinzufügen, und die Gruppe wird die Aktionen an alle verbundenen Ansichten weitergeben.
<android.support.constraint.ConstraintLayout ...>
<TextView
android:id=”@+id/text1" ... />
<TextView
android:id=”@+id/text2" ... />
<android.support.constraint.Group
android:id=”@+id/group”
...
app:constraint_referenced_ids=”text1,text2" />
</android.support.constraint.ConstraintLayout>
In diesem Fall, wenn wir
group.setVisibility(View.GONE);
rufen dann text1 und text2 die Sichtbarkeit GONE erhalten.
Original text here.
Offizielle Dokumente mit description here.
Es ist eine Abkürzung für für ausgewählte Ansichten erstellen Gruppe. Es wird automatisch alle IDs in der Art enthalten, die sie enthalten sollen. Du solltest es versuchen. Auch für Prozentsätze gibt es 3 neue Attribute (tippen Sie einfach "app: per" und schauen Sie sich Android Studio Hinweise an). – Ekalips
Danke! Ich werde das überprüfen. – Roman