2015-01-18 9 views
13

Ist es möglich, den entsprechenden Stil von Widget.Material.Spinner.Underlined mit den AppCompat-Bibliotheken für PreV21-Geräte zu erhalten?Gibt es ein AppCompat-Äquivalent von Widget.Material.Spinner.Underlined?

Ich möchte v16 + in meiner App unterstützen, würde aber gerne die Unterstreichung auf Spinner mit den AppCompat-Bibliotheken erhalten, wenn möglich.

+0

hast du es funktioniert? – Jared

+0

Ich stehe vor dem gleichen Problem. Es scheint, wenn ich meine App in 16+ Android unterstützen muss, dann muss ich mit einem Spinner ohne eine Unterstreichung dann zufrieden sein. – Abhi

Antwort

22

UPDATE (11. März 2015): AppCompat Revision 22 eingeführt, um einen Spinner Stil, der die unterstrichenen beinhaltet: "Base.Widget.AppCompat.Spinner.Underlined" (http://developer.android.com/tools/support-library/index.html#revisions)

OLD ANTWORT: AppCompat nicht über eine Äquivalent, müssen Sie die Unterstreichung selbst hinzufügen.

Es gibt ein Problem, das in einer "zukünftigen Version" als behoben markiert wurde. Es gab seither mehrere AppCompat-Versionen, aber immer noch keine Anzeichen für einen Unterstreichungsstil.

https://code.google.com/p/android/issues/detail?id=77819

19

Für alle, die den Code muss diese Funktion zu erhalten. So stellen Sie sicher, dass Sie rev22 der AppCompat v7 Bibliothek verwenden und dann den folgenden in Ihre style.xml Datei setzen:

<item name="MySpinnerStyle">@style/Widget.AppCompat.Spinner.Underlined</item> 

Auch der Name Ihres Stils Sie Ihre Spinner gesetzt werden sicherstellen, dass MySpinnerStyle zu ändern zu. Hier ist, wo ich meine Antwort (Kredit geht an jkane001!)
code.android.com: Appcompat: missing Spinner.Underline style

+0

hey @meandnotyou, möchten Sie vielleicht diese Antwort überprüfen, wenn Sie Probleme haben, es funktioniert, glaube ich, dass Sie diese Codezeile benötigen :-) – Jared

+0

Wie können wir die Farbe des Pfeils ändern und dies unterstreichen nach Farbe Primär- und Farbakzent? 'colorControlHighlight' funktioniert ordnungsgemäß, aber ich möchte einen Standardzustand! – Skynet

+1

Gefunden: ' @ color/myControlColor' Sexy ist nur ein Wort! – Skynet

-1

Verwenden Sie einen Stil für die Spinner, zum Beispiel dieser:

style = "@ android: style/Widget.Holo.Light .Spinner "

2
<item name="android:spinnerStyle">@style/Widget.AppCompat.Spinner.Underlined</item> 
<item name="colorControlHighlight">@color/your_color</item> 

Nachdem ich die zweite Zeile hinzugefügt habe, wurde ich auch auf meinem Kitkat Gerät unterstrichen.