2015-01-25 17 views
5

Ich habe eine Frage zu "android: showAsAction". Ich habe ein Buch für Android und in diesem Buch (IMO ist es nicht auf dem neuesten Stand, aber die meisten Dinge sind gültig) sie verwendenIst Android: showAsAction veraltet?

android:showAsAction 

Zum Menüpunkt auf der Aktionsleiste (Menüs erstellt in Fragmente) angezeigt werden soll. Ich benutze das Android Studio. Die Kompilier SDK-Version ist auf API 19 (KitKat) eingestellt. Ich feuere es auf meinem LG G2, das Android 4.4 an Bord hat.

Ich frage, ob dies ist veraltet, weil Android Studio mir sagt:

 Should use app:showAsAction with the appcompat library with xmlns:app="http://schemas.android.com/apk/res-auto" less... (Ctrl+F1) 
    When using the appcompat library, menu resources should refer to the showAsAction in the app: namespace, not the android: namespace. 
    Similarly, when not using the appcompat library, you should be using the android:showAsAction attribute. 

Ich gehe davon aus, dass appcompat Bibliothek der Support-Bibliothek ist. Aber ich benutze es überhaupt nicht, weil ich keine Abwärtskompatibilität brauche.

Auch wenn ich auf die App wechseln: ShowAsAction und ich werde die richtige App hinzufügen: Xmlns, dann ist mein Action-Element in meiner Aktionsleiste nicht sichtbar. Wenn ich zurück zu android: showAsAction wechsle, dann ist das Symbol sichtbar.

Ich frage mich, was ist falsch in meinem Code, sollte ich App: ShowAsAction verwenden oder sollte ich Android: ShowAsAction?

Beste ragards

Antwort

9

Es ist veraltet nicht Sie müssen nur app:android: statt verwenden, wenn Sie mit dem ActionBar von der Support-Bibliothek arbeiten. Die Bedeutung all dieser Optionen ist dieselbe. Sie können android: in der Support-Bibliothek nicht verwenden, da es sich um eine eigenständige Bibliothek handelt. Sie können android: nicht wirklich verwenden, wenn Sie mit der Aktionsleiste arbeiten.

+0

Ok ich es bekommen. Ich habe noch eine Frage - ist es bevorzugt, App zu verwenden? Weil Android Studio android: showAsAction immer noch vorschlägt, dass es ein Fehler ist? –