android – 设置appcompat工具栏菜单的字体样式粗体

前端之家收集整理的这篇文章主要介绍了android – 设置appcompat工具栏菜单的字体样式粗体前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的菜单项变为红色,10sp,背景为白色,但textStyle粗体不起作用.为什么是这样?

styles.xml

  1. <style name="toolbarMenuTheme">
  2. <item name="android:colorBackground">@color/white</item>
  3. <item name="android:textColor">@color/red</item>
  4. <item name="android:textSize">10sp</item>
  5. <item name="android:textStyle">bold</item>
  6. </style>

我的布局片段.

  1. <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
  2. android:id="@+id/toolbar"
  3. android:layout_width="match_parent"
  4. android:layout_height="48dp"
  5. android:layout_marginTop="-5dp"
  6. android:background="@color/white"
  7. android:theme="@style/toolbarMenuTheme"/>

我的膨胀布局.

  1. <item
  2. android:id="@+id/web_view_reload"
  3. android:icon="@drawable/replay"
  4. android:title="Reload"
  5. app:showAsAction="always"/>
  6. <item
  7. android:id="@+id/web_view_action"
  8. android:icon="@drawable/stack_icon_on"
  9. android:title="Stack"
  10. app:showAsAction="always"/>
  11. <item
  12. android:id="@+id/web_view_screenshot"
  13. android:icon="@drawable/screenshot"
  14. android:title="Screenshot"
  15. app:showAsAction="always"/>
  16. <item
  17. android:id="@+id/web_view_share"
  18. android:title="SHARE WEBSITE"/>
  19. <item
  20. android:id="@+id/web_view_copy_url"
  21. android:title="Copy URL"/>

用java填充它:

  1. Toolbar toolbar = (Toolbar) view.findViewById(R.id.toolbar);
  2. toolbar.setNavigationIcon(R.drawable.x);
  3. toolbar.inflateMenu(R.menu.web_view_toolbar_menu);

并设置单击侦听器:

  1. toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
  2. @Override
  3. public boolean onMenuItemClick(MenuItem item) {
  4. ....
  5. }
  6. }

评论后编辑

这是我的完整styles.xml

Styles.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <style name="CustomUITheme" parent="@style/Theme.AppCompat.Light.NoActionBar">
  4. <item name="android:windowNoTitle">true</item>
  5. <item name="android:windowActionBar">false</item>
  6. <item name="windowActionBar">false</item>
  7.  
  8. <item name="android:windowBackground">@color/milky</item>
  9.  
  10. <!--item name="android:textSelectHandle">@drawable/text_select_handle_middle</item>
  11. <item name="android:textSelectHandleLeft">@drawable/text_select_handle_left</item>
  12. <item name="android:textSelectHandleRight">@drawable/text_select_handle_right</item-->
  13. <item name="colorPrimary">@color/toolbar_bg</item>
  14. <item name="colorPrimaryDark">#ff404040</item>
  15. <item name="colorAccent">@color/accent</item>
  16. <item name="android:textColorHighlight">@color/text_highlight</item>
  17.  
  18. <!--item name="alertDialogTheme">@style/AppCompatAlertDialogStyle</item-->
  19. </style>
  20.  
  21. <style name="toolbarMenuTheme" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
  22. <item name="android:colorBackground">@color/white</item>
  23. <item name="android:textColor">@color/red</item>
  24. <item name="android:textSize">10sp</item>
  25. <item name="android:textStyle">bold</item>
  26. </style>
  27.  
  28. <style name="AppCompatAlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert">
  29. <item name="android:background">#FFFFFF</item>
  30. <item name="android:windowNoTitle">true</item>
  31. </style>
  32.  
  33. <!--style name="CustomActionBar"
  34. parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
  35. <item name="android:background">@color/toolbar_bg</item>
  36. </style-->
  37.  
  38. <style name="captionOnly">
  39. <item name="android:background">@null</item>
  40. <item name="android:clickable">false</item>
  41. <item name="android:focusable">false</item>
  42. <item name="android:minHeight">0dp</item>
  43. <item name="android:minWidth">0dp</item>
  44. </style>
  45.  
  46. <!-- FAB -->
  47. <style name="FloatingActionButton" parent="android:Widget.ImageButton">
  48. <item name="floatingActionButtonSize">normal</item>
  49. </style>
  50.  
  51. <!-- empty states -->
  52. <style name="empty_title">
  53. <item name="android:textSize">10dp</item>
  54. </style>
  55.  
  56. <style name="empty_details">
  57. <item name="android:textColor">#999999</item>
  58. <item name="android:textSize">8dp</item>
  59. </style>
  60. </resources>

解决方法

在styles.xml文件添加以下内容
  1. <style name="ActionBar.nameText" parent="TextAppearance.AppCompat.Widget.ActionBar.Title">
  2. <item name="android:textColor">@color/PrimaryTextColor</item>
  3. <item name="android:textSize">18sp</item>
  4. <item name="android:textStyle">bold</item>
  5. </style>

样式名称和父级可能在您的情况下有所不同,但将概念设为粗体

编辑

在toolbar.xml中使用以下内容

  1. <android.support.v7.widget.Toolbar
  2. xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:companyApp="http://schemas.android.com/apk/res-auto"
  4. android:layout_width="match_parent"
  5. android:layout_height="?actionBarSize"
  6. companyApp:theme="@style/ActionBarThemeOverlay"
  7. companyApp:titleTextAppearance="@style/ActionBar.nameText">
  8. </android.support.v7.widget.Toolbar>

在你的styles.xml中

  1. <style name="ActionBarThemeOverlay" parent="">
  2. <item name="android:textColorPrimary">@color/PrimaryTextColor</item>
  3. <item name="colorControlHighlight">@color/BackgroundColor</item>
  4. <item name="android:actionMenuTextColor">@color/PrimaryTextColor</item>
  5. <item name="android:textColorSecondary">@color/PrimaryTextColor</item>
  6. <item name="android:background">@color/PrimaryBackgroundColor</item>
  7. </style>

并在androidmanifest.xml中

  1. <application
  2. android:icon="@drawable/ic_launcher"
  3. android:label="@string/app_name"
  4. android:theme="@android:style/Your Theme">

猜你在找的Android相关文章