有一个ActionBar
上的每个Android 4.0的应用程序,它得到了一个称号。 我需要这个尺寸更小。 但我不明白,我怎么能做到这一点,因为ActionBar
没有规定其公共方法。 备注:我不希望使用自定义视图。
Answer 1:
其实,你可以做你想做的自定义动作条的内容。 它必须通过主题来完成。 你可以这样做:
<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>
Answer 2:
你总是可以做这样的事情:
ActionBar actionBar = getActionBar();
actionBar.setTitle(Html.fromHtml("<small>YOUR TITLE</small>"));
Answer 3:
在我的系统,RES /风格AppTheme有一张纸条写着:
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
这是AndroidMainfest.xml指示的风格。 我加
<item name="android:textSize">15sp</item>
和它的工作,我宁愿这样做不是一个自定义动作条。
Answer 4:
我按照这个方法来跳过自定义样式创建:
- 创建所需的文本大小的自定义布局,
- 它应用到你的动作条。
1)创建一个布局文件(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>
这里设置您需要TEXTSIZE。
2)MainActivity.java
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); //bellow setSupportActionBar(toolbar);
getSupportActionBar().setCustomView(R.layout.titlebar);
希望这可以帮助。
Answer 5:
该文本在Android的动作条大小为标准 。
由于ICS,Android现在开发了一个标准,使应用程序(希望)遵循相同的UI指南和设计原则。
http://developer.android.com/guide/practices/ui_guidelines/index.html
这就是为什么你不能改变它。
但是 ,如果你仍然想这样做,你可以使用自定义主题或可能实现动作条(叉),并修改其源: https://github.com/johannilsson/android-actionbar得到最大程度的控制。
文章来源: How to change size of title's text on Action Bar?