2012-04-07 12 views
31

Colore predefinito per le linee sul tema Android Theme.Holo.Dialog sono blu. Mi piacerebbe sapere come cambiarlo con qualsiasi altro colore. arancione nel mio casoandroid Theme.Holo.Dialog che modifica le linee blu in arancione

posso cambiare il testo o di sfondo, ecc .. orveriding il tema con uno style.xml personalizzato

<style name="Theme.MyTheme" parent="@android:style/Theme.Holo.Dialog" > 
     <item name="android:textColor">@color/coloroscuro</item> 
     <item name="android:textColorHint">@color/coloroscuro</item> 
    </style> 

ma non so proprietà wich gestisce il colore delle linee

intendo le linee blu che il tema ha per default come quelli indicati su quest'altra domanda:

How to Android Holo Theme style dialog box buttons

Tx

+0

che tipo di linee ?? – JRaymond

+0

le linee blu predefinite su Theme.Holo.Dialog. Ho modificato la domanda per chiarire questo punto. tx – butelo

+2

@butelo Sto volendo fare una cosa simile. Hai creato una finestra di dialogo personalizzata alla fine? – bencallis

risposta

18

C'è una biblioteca che fa esattamente quello che vi serve - designazione facile di finestre di dialogo in tema Holo:

https://github.com/inmite/android-styled-dialogs

+1

Grazie per la lib, ma ho bisogno di usare gradle invece, è possibile? – wendigo

+0

La prossima versione verrà caricata su Maven Central come aar (in questo momento è solo apklib) –

25

appena scavato attorno alla fonte per voi - purtroppo la linea di divisione negli schemi di dialogo è una vista con un colore di sfondo hard coded che non fa riferimento eventuali temi:

<View android:id="@+id/titleDividerTop" 
    android:layout_width="match_parent" 
    android:layout_height="2dip" 
    android:visibility="gone" 
    android:background="@android:color/holo_blue_light" /> 

Quindi, se si vuoi cambiare il colore che avrai per impaginare la tua finestra di dialogo personalizzata. per renderlo più semplice, non sarebbe male copiare semplicemente dalla base di origine Android e personalizzarlo in base alle tue esigenze, ma potresti anche ottenere molto più del necessario.

+0

tx. Ti darò una prova – butelo

2

Un trucco è utilizzando la finestra senza barra del titolo, quindi Android non tracciare la linea, poi aggiungendo titolo e linea nel file xml del layout di dialogo! per esempio:

<style name="myDialogStyle" parent="android:style/Theme.Holo.Dialog"> 
    <item name="android:windowNoTitle">true</item> 
</style> 

in uso palese:

<activity 
     android:name=".Activity.Mydialog" 
     android:theme="@style/myDialogStyle" > 
    </activity> 

e nel layout MyDialog definire il titolo e la linea con il vostro colore e lo stile desiderato!

evviva!

Problemi correlati