Autore Topic: modificare layout spinner  (Letto 1041 volte)

Offline vanz

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Sensation
  • Sistema operativo:
    Win7
modificare layout spinner
« il: 04 Marzo 2014, 17:31:07 CET »
0
Ciao a tutti,
  sto trovando parecchie difficoltà nel customizzare il mio spinner.
In pratica quello che ho è uno spinner con con item selezionato
-bianco su sfondo nero + freccia,
-menu a tendina che appare con testo bianco su sfondo nero
orig.png(allegato)
Quello che vorrei è cambiare il colore del testo in blu, sfondo bianco, e mantene la freccia.
In tutte le prove che ho fatto riesco a creare due situazioni:
1-modifico tutti gli sfondi e colore del testo ma perdo l'icona di dropdown(imposto un background allo spinner ed un spinner_row.xml all'adapter)
modificato.png(allegato)
2-modifico sfondo, mantengo presente l'icona ma il menu a tendina che appare non prende lo stile, non modifico il colore del testo(imposto un background allo spinner)
modificato2.png(allegato)


In pratica se imposto uno stile alle righe dello spinner perdo l'icona.
Qualche consiglio?

Allego il codice del caso 1

Classe Java
Codice: [Seleziona]
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                        this,
                        R.layout.spinner_row,
                        comuni
                        );
        spinner.setAdapter(adapter);
spinner_row.xml
Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:gravity="center_vertical"
    android:singleLine="true"
    android:textColor="#105DA5"
    android:padding="5dip"
    android:background="#ffffff"
    android:id="@android:id/text1"
    style="?android:attr/spinnerItemStyle"
    android:ellipsize="marquee"
    android:textAlignment="inherit"
/>
spinner_background.xml
Codice: [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item>
        <layer-list>
            <item>
                <shape>
                    <gradient
                        android:startColor="#CCCCCC"
                        android:endColor="#CCCCCC"
                        android:angle="270" />
                    <padding
                        android:left="3dp"
                        android:top="3dp"
                        android:right="3dp"
                        android:bottom="3dp" />
                   
                </shape>
            </item>
            <item>
                <bitmap android:src="@drawable/drop_down_32x32"
                        android:gravity="top|right" />
            </item>
        </layer-list>
    </item>
</selector>

Offline vanz

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Sensation
  • Sistema operativo:
    Win7
Re:modificare layout spinner
« Risposta #1 il: 06 Marzo 2014, 12:37:02 CET »
0
credo che il problema possa essere che tramite lo stile delle row vado a posizionarmi sopra allo stile del background. Sto ancora lavorando per trovare un soluzione.