web-dev-qa-db-fra.com

Recherche de tous les styles disponibles définis par Android thèmes de plateforme

Dans plusieurs Android tutoriels de style, des éléments de style parent sont utilisés que je ne peux pas trouver dans les styles Android.R.style. * ( http://developer.Android.com/reference). /Android/R.style.html ).

Quelques exemples sont tirés de l'article de la barre d'action http://Android-developers.blogspot.com/2011/04/customizing-action-bar.html . Nick utilise des styles parent comme:

<style name="MyDropDownNav" parent="Android:style/Widget.Holo.Light.Spinner.DropDown.ActionBar">
...
</style>

ou

<style name="MyActionBarTabStyle" parent="Android:style/Widget.Holo.Light.ActionBarView_TabView">
...
</style>

D'où viennent ces styles parentaux? Est-il possible de répertorier tous les styles parent disponibles?

Merci.

44
Moritz

Comme indiqué dans l'article "Application de styles et de thèmes" :

La plateforme Android Android fournit une large collection de styles et de thèmes que vous pouvez utiliser dans vos applications. Vous pouvez trouver une référence de tous les styles disponibles dans la classe R.style . Pour utiliser les styles répertoriés ici, remplacez tous les traits de soulignement dans le nom du style par un point. Par exemple, vous pouvez appliquer le thème Theme_NoTitleBar avec "@Android:style/Theme.NoTitleBar".

La référence R.style , cependant, n'est pas bien documentée et ne décrit pas complètement les styles, donc l'affichage du code source réel de ces styles et thèmes vous permettra de mieux comprendre quelles propriétés de style chacun d'eux fournit. Pour une meilleure référence aux styles et thèmes Android Android, consultez le code source suivant:

Ces fichiers vous aideront à apprendre par l'exemple. Par exemple, dans le code source des thèmes Android Android, vous trouverez une déclaration pour <style name="Theme.Dialog">. Dans cette définition, vous verrez toutes les propriétés utilisées pour styliser les boîtes de dialogue utilisées par le framework Android.

70
Idolon

Voici Official Google's Documentation pour Default List de Themes et StylesGoogle Android Documentation

Vous pouvez trouver ici dans cette documentation

Je sais que la réponse à la question ci-dessus se termine ici en donnant toujours lieu à la mise en œuvre, car elle sera utile pour les novices ..

Comment les implémenter

Voici ce que j'ai obtenu du themes.xml

<style name="Theme.NoTitleBar">
    <item name="Android:windowNoTitle">true</item>
</style>

À présent to implement dans mon projet

Je dois ajouter la ligne suivante dans mon Styles.xml fichier

<style name="AppTheme" parent="Android:Theme.NoTitleBar" />

En cela, je crée mon own theme nommé "AppTheme" qui inherit ses propriétés de already defined them by google. donc je le mentionne dans parent

En examinant themes.xml et styles.xml ne sera pas seulement help to get the list of the already defined thèmes et styles mais aussi help novices to have an idea how to create les thèmes.

Comme le thème que je mentionne ici dans parent est déjà défini par Android nous allons donc l'utiliser en préfixant le Android: au nom du thème ..

Si tu veux inherit your created theme puis

<style name="Theme2" parent="AppTheme">
    <item name="Android:windowNoTitle">true</item>
    <item name="Android:windowFullscreen">true</item>
    <item name="Android:windowContentOverlay">@null</item>
</style> 

il suffit alors de fournir le style name to the parent, ici j'utilise Apptheme comme thème parent pour theme2

3
DeltaCap019

Pour "Android: style/Widget.Holo.Light.ActionBarView_TabView", voir: http://developer.Android.com/reference/Android/R.style.html#Widget_Holo_Light_ActionBar_TabView ... et notez le Au niveau de l'API, il a été introduit!

Pour "Android: style/Widget.Holo.Light.Spinner.DropDown.ActionBar", essayez: http://developer.Android.com/reference/Android/R.style.html#Widget_Holo_Light_DropDownItem_Spinner

Ce dernier n'est que ma meilleure estimation - je ne parviens pas à faire tomber la liste.

3
hooby3dfx

L'attribut Parent est facultatif lors de la création de votre propre themes ou styles. Fondamentalement, les attributs parent sont utilisés pour hériter des styles qui sont déjà définis dans la plateforme elle-même.

Si nous souhaitons hériter d'un theme ou style et écraser certaines fonctionnalités, nous pouvons utiliser l'attribut parent.

Voici un lien pour le tout plate-forme disponible définie styles.

Et encore une astuce:

Si vous voulez hériter de votre propre style que vous avez créé vous-même, suivez cet exemple pour hériter.

    <style name="MyDropDownNav.Red">
        <item name="Android:textColor">#FF0000</item>
    </style>
3