2011-11-21 3 views
20

Voglio creare un shape drawable per quello imita il nuovo tema olografico (Android> = 3.0) su versioni precedenti di Android.Stile Modifica visualizzazione del testo con forma estraibile per sembrare simile al nuovo tema olografico per Android <3.0

E 'abbastanza facile per disegnare una linea in basso con

<?xml version="1.0" encoding="utf-8"?> 
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
     <item> 
      <shape > 
       <solid android:color="@color/border" /> 
      </shape> 
     </item> 

     <!-- main color --> 
     <item android:bottom="1.5dp"> 
      <shape > 
       <solid android:color="@color/background" /> 
      </shape> 
     </item> 
    </layer-list> 

Ma come disegnare i confini di zecca a destra ea sinistra, come nel tema Holo slide from talk about android ui at Google I/O 2011

+0

Hai raggiunto ciò che stavi cercando di fare? –

+0

Sì. Era sufficiente Come scritto sotto la soluzione manca l'effetto bagliore per il campo selezionato. – Rodja

risposta

29

E' un piccolo hack, ma a meno che trovare qualcosa di meglio, in questo modo dovrebbe essere possibile.

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item> 
     <shape > 
      <solid android:color="@color/border" /> 
     </shape> 
    </item> 

    <!-- main color --> 
    <item android:bottom="1.5dp" 
     android:left="1.5dp" 
     android:right="1.5dp"> 
     <shape > 
      <solid android:color="@color/background" /> 
     </shape> 
    </item> 

    <!-- draw another block to cut-off the left and right bars --> 
    <item android:bottom="15.0dp"> 
     <shape > 
      <solid android:color="@color/background" /> 
     </shape> 
    </item> 
</layer-list> 
+0

Funziona come previsto! Immagino che creare un bagliore per lo stato selezionato non sia così facile ... – Rodja

+1

Un approccio totalmente differente (senza usare i drawable di forma), è usare .9.png (o nove immagini di patch) ... Con quelli, dovrebbe essere anche abbastanza facile, ma non conosco la ragione per cui rimango con i shape-drawable. http://developer.android.com/guide/developing/tools/draw9patch.html – Entreco

+2

I drawable di forma sono indipendenti dalla risoluzione. Quando utilizzo nove patch, devo gestire un gruppo di risorse. Se questo non è un problema, anche nove patch sono un'ottima soluzione. – Rodja

9

ho trovato questo sito che creerà drawable Holo a tema per i widget per qualsiasi colore scelto: http://android-holo-colors.com/. Genera 9 patch per te, le infili nella tua app.

+0

Ma grazie per il link! È bello ottenere rapidamente dei drawable e arrivare subito alla programmazione – Entreco