Kann Android Studio Referenzen automatisch aus einer Layout-XML-Datei in die Java-Aktivitätsdatei extrahieren?

8

Früher hatte MotoDev Studio (basierend auf Eclipse, veröffentlicht von Motorolla) eine Funktion, um Referenzen aus Ihrem XML in Ihren Code zu extrahieren. Standard-Eclipse mit dem ADT hatte diese Funktion nicht, aber fragte sich, ob es in Android Studio möglich ist.

Also zum Beispiel gegeben XML:

%Vor%

Dies würde in der Klasse Ihrer Aktivität generiert:

%Vor%     
Geeks On Hugs 05.06.2014, 00:32
quelle

3 Antworten

7

Es gibt ein Plug-in für Android Studio namens ButterKnifeZelezny , das die Funktion bietet, die Sie anfordern, aber nur, wenn Sie ' Verwenden Sie ButterKnife . Sie können auswählen, was Sie importieren möchten und so weiter.

    
skywall 05.12.2015 22:30
quelle
4

Die Antwort ist ein qualifiziertes "Ja", beginnend mit Marshmallow und zurück zu Gingerbread mit seiner Kompatibilitätsbibliothek, Android hat jetzt Datenbindung . Es extrahiert nicht die Referenzen als solche, aber es tut ziemlich genau das, was Sie wollen.

Also jetzt statt

%Vor%

Wir haben

%Vor%

Und anstatt diesen Java-Code mit externem Kesselblechcode zu haben

%Vor%

Wir haben jetzt (was einen Schritt darüber hinausgeht, was Butterknife innerhalb seiner updateUI-Methode macht)

%Vor%

Und die Verbesserungen gehen noch darüber hinaus, also würde ich vorschlagen, dass Sie die folgende Präsentation gegeben von den Google-Ingenieuren, George Mount und Yigit Boyar.

Es ist die Investition wert, durchzukommen. All dies wird zur Kompilierzeit durchgeführt, so dass keine Laufzeitnachteile entstehen. Und wie ich zu Beginn gesagt habe, ist es abwärtskompatibel bis Android 2.3, also gibt es wirklich keinen Grund, diese neue Funktionalität nicht zu verwenden.

    
Stephan Branczyk 05.12.2015 22:05
quelle
0

Sie könnten ButterKnife ausprobieren. Es tut nicht genau was Sie wollen, aber es wird eine Menge Kesselplatte los. @zigis Lösung scheint alles zu importieren, was in der realen Welt nicht großartig ist!

    
OrhanC1 05.06.2014 01:49
quelle