31 votes

android Theme.Holo.Dialog changeant les lignes bleues en orange

Couleur par défaut pour les lignes sur Android thème.Holo.Dialogue sont en bleu. Je voudrais savoir comment faire pour modifier n'importe quelle autre couleur. Orange dans mon cas

Je peux modifier le texte ou de fond etc.. orveriding le avec un thème personnalisé style.xml

   <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>

mais je ne sais pas qui gère bien la couleur des lignes

Je veux dire les lignes bleues que le thème par défaut, comme on peut le voir sur cette autre question:

Comment Android Holo Thème de la boîte de dialogue style de boutons

Tx

24voto

JRaymond Points 6348

Il suffit de fouiller dans le code source pour vous - malheureusement, la ligne Séparateur dans les présentations de dialogue est une vue avec un arrière-plan de couleur codée de manière rigide qui ne fait référence à aucun thème:

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

Donc, si vous voulez changer la couleur, vous devrez mettre en page votre propre boîte de dialogue personnalisée. pour faciliter les choses, il ne serait pas nuisible de simplement copier à partir de la base source Android et de la personnaliser selon vos besoins, mais vous pourriez aussi obtenir beaucoup plus que ce dont vous avez besoin.

18voto

Destil Points 3673

Il existe une bibliothèque qui fait exactement ce dont vous avez besoin - le style facile des dialogues dans le thème Holo:

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

0voto

barn.gumbl Points 1169

DialogFragment.STYLE_NO_TITLE + créer une présentation de dialogue personnalisée

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X