Looking for android Answers? Try Ask4KnowledgeBase
Looking for android Keywords? Try Ask4Keywords

Android Appliquer un thème AppCompat


Exemple

La bibliothèque de support AppCompat fournit des thèmes pour créer des applications avec la spécification Material Design . Un thème avec un parent de Theme.AppCompat est également requis pour qu'une activité étende AppCompatActivity .

La première étape consiste à personnaliser la palette de couleurs de votre thème pour coloriser automatiquement votre application.
Dans res/styles.xml votre application, vous pouvez définir:

<!-- inherit from the AppCompat theme -->
<style name="AppTheme" parent="Theme.AppCompat">

    <!-- your app branding color for the app bar -->
    <item name="colorPrimary">#2196f3</item>
    
    <!-- darker variant for the status bar and contextual app bars -->
    <item name="colorPrimaryDark">#1976d2</item>

    <!-- theme UI controls like checkboxes and text fields -->
    <item name="colorAccent">#f44336</item>
</style>

Au lieu de Theme.AppCompat , qui a un arrière-plan sombre, vous pouvez également utiliser Theme.AppCompat.Light ou Theme.AppCompat.Light.DarkActionBar .

Vous pouvez personnaliser le thème avec vos propres couleurs. Les bons choix se trouvent dans le nuancier de spécifications de conception de matériau et dans la palette de matériaux . Les couleurs "500" sont de bons choix pour le primaire (bleu 500 dans cet exemple); choisissez "700" de la même teinte pour le noir; et une nuance d'une couleur différente de celle de l'accent. La couleur primaire est utilisée pour la barre d'outils de votre application et son entrée dans l'écran d'aperçu (applications récentes), la variante la plus sombre pour teinter la barre d'état et la couleur d'accentuation pour mettre en évidence certains contrôles.

Après avoir créé ce thème, appliquez-le à votre application dans AndroidManifest.xml et appliquez également le thème à une activité particulière. Ceci est utile pour appliquer un thème AppTheme.NoActionBar , qui vous permet d'implémenter des configurations de barre d'outils autres que celles par défaut.

<application android:theme="@style/AppTheme" 
    ...>
    <activity 
        android:name=".MainActivity"
        android:theme="@style/AppTheme" />
</application>

Vous pouvez également appliquer des thèmes à des vues individuelles à l'aide d' android:theme et d'un thème ThemeOverlay . Par exemple, avec une Toolbar :

<android.support.v7.widget.Toolbar
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:background="?attr/colorPrimary"
  android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />

ou un Button :

<Button
    style="@style/Widget.AppCompat.Button.Colored"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:theme="@style/MyButtonTheme"/>

<!-- res/values/themes.xml -->
<style name="MyButtonTheme" parent="ThemeOverlay.AppCompat.Light">
    <item name="colorAccent">@color/my_color</item>
</style>