2010-03-22 15 views
6

Jestem spróbować zmienić kolor tekstu i wyrównać element wirówki do centrum to w jaki sposób mogę to zrobićJak kolorować i wyrównywać element spinner na Androidzie?

tutaj jest mój kod

String[] li={"1","2","3"}; 
final Spinner combo = (Spinner)findViewById(R.id.widget30); 
ArrayAdapter<String> a = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, li); 
combo.setAdapter(a); 

Dzięki

Odpowiedz

19

użyć niestandardowego widoku za to i określić, pod numerem:

a.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 

Zauważ, że musisz użyć własnego widoku tutaj: R.id.my_simple_spinner_dropdown_item

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1" 
    style="?android:attr/spinnerItemStyle" 
    android:singleLine="true" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:ellipsize="marquee" /> 
+0

Bardzo miły ... pracował dla mnie. Wydaje się dziwne, że stylem jest Spinner z TextView, ale z pewnością działa. Czy Spinners w jakiś sposób dziedziczą kolory tekstu bez stylizowania ich w ten sposób? Na emulatorze miałem inne zachowanie niż na telefonie. Telefon dał mi biały tekst na białym tle ... oczywiście problem. Ta technika pozwala mi wymusić widoczność. –

+1

Istnieje duży minus tego rozwiązania. Aby ustawić elementy RTL, musisz nadać mu szerokość fill_parent lub match_parent. Jak wyrównać elementy RTL przy użyciu wrap_content dla TextView? ponieważ zwykle chcemy, aby szerokość naszej przędzarki była równa największej szerokości przedmiotu. – Reza

Powiązane problemy