Aber auf der Registerkarte „Vorschau“ in der IDE fungiert Merge immer als FrameLayout, und wir werden so etwas sehen:
(Es ist Android Studio, Intellij IDEA ist genauso, über Eclipse weiß ich nicht)
Die Vorschau beschleunigt die Entwicklung von Layouts erheblich, es ist traurig, dass selbst für einige Layouts eine so große Hilfe verloren geht. Möglicherweise gibt es eine Möglichkeit festzulegen, wie die Vorschau interpretiert werden soll merge Tag in einem bestimmten Layout?
Ich möchte, dass diese Unterstützung auch hinzugefügt wird.
Es gibt ein neues parentTag-Tools-Attribut (in Android Studio 2.2 hinzugefügt), die Sie verwenden können, um den Layouttyp für ein Merge-Tag anzugeben, wodurch das Layout in der Vorschau des Layout-Editors korrekt gerendert wird.
Notiz: Beide android:layout_width und android:layout_height muss angegeben werden, damit das Layout im Editor richtig angezeigt wird.
Weiß jemand, wie die Vorschau korrekt angezeigt wird, wenn Sie Ihr benutzerdefiniertes Ansichts-Tag in einer anderen Layoutdatei hinzufügen? <com.yourpackage.yourcustomview id="@+id/my_cust_view" android:layout_width="match_parent" android:layout_height="match_parent"/>
Gute Nachrichten! Nicht sehr praktisch für zusammengesetzte Komponenten, da wir nur für die Vorschau ein zusätzliches Layout hinzufügen müssen. Aber besser als nichts.
– Darja
12. Mai 2014 um 9:59 Uhr
Irgendwelche Ideen zu etwas Ähnlichem werden in Eclipse unterstützt?
Ich habe einige Attribute für die Stammansicht (in diesem Fall RelativeLayout) programmgesteuert festgelegt, z. B. Padding. Natürlich werden sie in diesem Hilfslayout nicht angewendet (weil Sie eine völlig andere Ansicht verwenden). Die einzige Lösung bestand darin, die gesamte benutzerdefinierte Ansicht im Hilfslayout zu verwenden.
– Felix Edelmann
30. April 2016 um 15:52 Uhr
nicht veraltet, es könnte verwendet werden, wenn Sie keine generische Anzeige wünschen
– wieder neu
9. Juni 2018 um 6:09 Uhr
Es ist auch möglich, eine benutzerdefinierte Klasse als übergeordnete Klasse zu verwenden, anstatt sie zusammenzuführen
Und dann direkt dieses Layout aufblasen und Ergebnisansicht dazu werfen SomeView. Android Studio überprüft direkt die übergeordnete Klasse von SomeView und behandeln Vorschau wie LinerLayout. Sie können verwenden onFinishInflate() Methode in der SomeView Ansichten zu binden findViewById(). Der Vorteil dieser Lösung ist, dass Sie alle Layoutdefinitionen oder Stildefinitionen direkt in die Layoutdatei einfügen können, Sie können keine Methode wie verwenden setOrientation() in Code.
Dies führt zu einer unendlichen Rekursion und der Stack läuft über, wenn versucht wird, eine Vorschau anzuzeigen, wodurch das gesamte Android Studio für immer hängen bleibt.
– mato
23. Juli 2015 um 15:54 Uhr
13454700cookie-checkVorschau des Layouts mit Merge-Root-Tag in Intellij IDEA/Android Studioyes
Ich möchte, dass diese Unterstützung auch hinzugefügt wird.
– Christoph Perry
1. August 2013 um 6:14 Uhr
Dies könnte irgendwann in der Zukunft durch das Attribut tools gelöst werden. code.google.com/p/android/issues/detail?id=61652
– Jonas
8. Mai 2014 um 11:17 Uhr