工具栏Android的文字大小和样式

时间:2016-07-14 17:40:37

标签: java android xml

我正在开发具有多屏幕支持的应用程序。我已根据设备大小完成了所有保留布局,但我无法增加Actionbar / Toolbar大小。它看起来很小的10英寸平板电脑。如何增加工具栏文本的大小?

My Style XML如下所示

<resources>

<!--
    Base application theme, dependent on API level. This theme is replaced
    by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Light">

</style>


<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.FullScreen" parent="noActionBar">
<item name="android:windowFullscreen">true</item>
</style>
<style name="noActionBar" parent="Theme.AppCompat.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>
<style name="OptionDialog" parent="Theme.AppCompat.Dialog.Alert">

    <item name="colorAccent">#C5CAE9</item>
    <item name="android:background">#3F51B5</item>
    <item name="android:textColor">?android:attr/textColorPrimaryInverseDisableOnly</item>
</style>


<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

<style name="SelectableItemTheme">
    <item name="colorControlHighlight">#888888</item>
</style>

<style name="SelectableItemBackground">
    <item name="android:theme">@style/SelectableItemTheme</item>
    <item name="android:background">?attr/selectableItemBackground</item>
</style>


<style name="HomeTabTextStyle" 
    parent="TextAppearance.Design.Tab"> 
    <item name="android:textSize">35sp</item> 
    <item name="android:textStyle">bold</item> 
    </style>

<!-- Action Bar Style -->

我的布局xml包括工具栏如下

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="110dp"
        android:background="?attr/colorPrimary"
        app:popupTheme="@style/AppTheme.PopupOverlay" />

    <android.support.design.widget.TabLayout
        android:id="@+id/tabs"
        app:tabTextAppearance="@style/HomeTabTextStyle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />


</android.support.design.widget.AppBarLayout>

我的Java代码如下所示

setContentView(R.layout.activity_home);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);

    setTitle("My App Name");

1 个答案:

答案 0 :(得分:4)

工具栏就像任何其他布局一样;这意味着您可以在其中添加元素:

     <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:popupTheme="@style/AppTheme.PopupOverlay">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textSize="25sp"
            android:textColor="@color/colorText"
            android:gravity="center|center_horizontal"
            android:text="@string/title_activity_my_activity"/>

    </android.support.v7.widget.Toolbar>

这将更改工具栏标题的标题大小;如你所愿。

我希望这可以帮助您实现目标!祝你好运。

<强>更新

如果要手动设置活动标题,可以为文本视图设置ID,如下所示:

<TextView
      android:id="@+id/title_text"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:textSize="25sp"
      android:textColor="@color/colorText"
      android:gravity="center|center_horizontal"
      android:text="@string/title_activity_my_activity"/>

然后像往常一样,

TextView title = (TextView) toolbar.findViewById(R.id.title_text);
title.setText("New Title");

我希望这有帮助!