Il y a un ActionBar
sur chaque Android 4.0, et elle a un titre. J'ai besoin de réduire cette taille. Mais je ne comprends pas comment je peux le faire, parce que ActionBar
ne fournit pas de méthodes publiques pour cela. Remarque: Je ne veux pas utiliser des vues personnalisées.
En fait, vous pouvez faire ce que vous voulez pour personnaliser l'ActionBar. Cela doit être fait à travers le thème. Vous pouvez faire quelque chose comme ça:
<style name="Theme.YourTheme" parent="Android:style/Theme">
<item name="Android:actionBarStyle">@style/Theme.YourTheme.Styled.ActionBar</item>
</style>
<style name="Theme.YourTheme.Styled.ActionBar">
<item name="Android:titleTextStyle">@style/Theme.Viadeo.Styled.YourTheme.TitleTextStyle</item>
</style>
<style name="Theme.YourTheme.Styled.ActionBar.TitleTextStyle" parent="@Android:style/Widget.TextView">
<item name="Android:textSize">12sp</item>
</style>
Vous pouvez toujours faire quelque chose comme ça:
ActionBar actionBar = getActionBar();
actionBar.setTitle(Html.fromHtml("<small>YOUR TITLE</small>"));
sur mon système, res/styles AppTheme a une note disant
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
et c'est le style indiqué dans AndroidMainfest.xml. J'ai ajouté
<item name="Android:textSize">15sp</item>
et cela a fonctionné et je préfère faire cela plutôt qu'une barre d'action personnalisée.
J'ai suivi cette méthode pour ignorer la création de style personnalisé:
1) Créez un fichier de mise en page (titlebar.xml):
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:orientation="vertical">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:id="@+id/action_bar_title"
Android:text="@string/app_name"
Android:textColor="@color/colorPrimary"
Android:textSize="24sp" />
</LinearLayout>
Définissez ici la taille de texte requise.
2) MainActivity.Java
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); //bellow setSupportActionBar(toolbar);
getSupportActionBar().setCustomView(R.layout.titlebar);
j'espère que cela t'aides.
La taille du texte en Android ActionBar est standard .
Depuis ICS, Android développe maintenant une norme pour que les applications suivent (espérons-le) les mêmes directives d'interface utilisateur et les mêmes principes de conception.
http://developer.Android.com/guide/practices/ui_guidelines/index.html
C'est pourquoi vous ne pouvez pas le changer.
Cependant , si vous voulez toujours le faire, vous pouvez utiliser un thème personnalisé ou peut-être implémenter ActionBar (un fork) et modifier ses sources: https://github.com/johannilsson/Android-actionbar pour obtenir un contrôle maximal.