android-如何在动作栏项api 8+中更改fontsize

时间:2014-09-16 08:25:58

标签: android android-actionbar android-theme

我正在使用api 8+。 这是我制作菜单的代码:

    <item
    android:id="@+id/sortDate"
    android:orderInCategory="100"
    android:title="@string/sortDate"
    yourapp:showAsAction="never"/>
<item
    android:id="@+id/sortPrice"
    android:orderInCategory="100"
    android:title="@string/sortPrice"
    yourapp:showAsAction="never"/>

它显示了菜单,但文本大小非常大,我想使用我的自定义字体和文本化菜单,并支持api 8+。

我已经找到了一些,但他们的工作是api 11 +

我该怎么办?

谢谢

3 个答案:

答案 0 :(得分:2)

试试这个 -

res/values/dimens.xml -

中的维度中定义文字大小
<dimen name="actionbar_textsize">TextSize</dimen>

然后在res/values/styles -

中添加此代码
<style name="MyTheme.ActionBar.TitleTextStyle" parent="@android:style/TextAppearance.Medium">
    <item name="android:textSize">@dimen/actionbar_textsize</item>
</style>

然后 -

<item name="titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>
<item name="android:titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>

答案 1 :(得分:1)

您必须在style.xml文件中使用自定义样式:

<style name="CustomActionBar" parent="@android:style/TextAppearance.DeviceDefault.Widget.ActionBar.Menu">
  <item name="android:textSize">16dip</item>

答案 2 :(得分:0)

您可以使用android support appcompat lib.This代码自定义操作栏组件与appcompat。

ActionBar mActionBar = getSupportActionBar(); mActionBar.setDisplayShowHomeEnabled(false); mActionBar.setDisplayShowTitleEnabled(false); **mActionBar.setCustomView(R.layout.actionview_main);** getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); View mCustomView = mActionBar.getCustomView(); textViewTitle = (TextView) mCustomView.findViewById(R.id.textView_Title); ImageView menuImage = (ImageView) mCustomView.findViewById(R.id.imageView_menu); ImageView userImageView = (ImageView) mCustomView.findViewById(R.id.imageView_user);

您可以创建操作视图xml文件,然后创建操作栏setcustomview xml文件。