Ce qui ne l'AppBaseTheme faire dans les applications android
Je suis incapable de comprendre ce qui se passe avec AppBaseTheme dans Android.
Dans styles.xml j'ai le code suivant
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="mycolor">
<item name="android:background">@layout/header_gradient</item>
<item name="android:padding">5dip</item>
</style>
<style name="myParentTheme" parent="android:Theme.Light">
<item name="android:attr/windowTitleSize">40dip</item>
<item name="android:attr/windowTitleBackgroundStyle">@style/mycolor</item>
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
</style>
Dans AndroidManifest.xml lorsque j'utilise android:thème="@style/myParentTheme" la couleur et la taille du titre sont définies à ce que je veux mettre. Mais le style pour les champs de texte modifications à l'ancienne régulière des zones de texte. Lorsque j'utilise android:thème="@style/AppTheme" l'INTERFACE utilisateur semble très "comme Android" mais mon paramètres spécifiques au titre n'ont aucun effet. Retrait parent="AppBaseTheme" rend le AppTheme style se comportent exactement comme les myParentTheme style.
En outre, pourquoi ne vois-je pas tous les R. attr éléments quand je fais Ctrl+Espace lors de la saisie dans l'attribut name de la balise Style?
S'il vous plaît aider. Merci.
- Quelque chose qui est même bizarre, c'est que je n'ai pas d'erreur pour le AppBaseTheme n'est pas définie. Il doit être un thème prédéfini. Où dois-je le lire?
Vous devez vous connecter pour publier un commentaire.
Si vous choisissez de créer une activité à l'aide de l'Éclipse de la nouvelle-assistant de projet, Eclipse va définir
AppTheme
etAppBaseTheme
ressources pour vous.AppBaseTheme
aura généralement trois définitions,res/values/
,res/values-v11/
, etres/values-v14/
.AppTheme
va hériter deAppBaseTheme
.L'intention est pour vous de mettre la plupart de votre application spécifique les informations de style dans
AppTheme
, plutôt que d'inventer votre propre thème (par exemple,myParentTheme
).AppBaseTheme
serait surtout de s'assurer que vous sont l'héritage du droit d'exploitation fourni par thème (par exemple,Theme.Light
vsTheme.Holo.Light
vsTheme.Holo.Light.DarkActionBar
). Vous pouvez également ajouter une version style spécifique de l'information à laAppBaseTheme
si vous le souhaitez.C'est parce que vous êtes à hériter de
Theme.Light
, qui utilise l'original (non holographique) widget.C'est parce que vous avez décidé de créer
myParentTheme
au lieu de mettre vos définitions de style dansAppTheme
.