我最近创建了一个在整个应用程序中使用自定义字体包的应用程序。但是当我使用ActionMode时,标题不使用自定义字体。那么,有谁知道如何将自定义字体应用于ActionMode的标题?
操作模式标题的字体与应用程序中的其他TextViews不匹配。
请看下面的图片
发布于 2021-08-08 16:37:10
您可以使用自定义actionMode style更改actionMode标题字体
首先创建自定义样式
<style name="ActionMode" parent="@style/Widget.AppCompat.ActionMode">
<item name="titleTextStyle">@style/ActionMode.Title</item>
<item name="android:titleTextStyle">@style/ActionMode.Title</item>
</style>
<style name="ActionMode.Title" parent="@style/TextAppearance.AppCompat.Widget.ActionMode.Title">
<item name="android:textColor">your color</item>
<item name="fontFamily">@font/yourfont</item>
<item name="android:fontFamily">@font/your font</item>
<item name="textSize">15sp</item>
<item name="android:textSize">15sp</item>
</style>现在放入你的主样式 style.xml中
<style name="Theme.Tarif.Light" parent="Theme.MaterialComponents.Light.NoActionBar">
<item name="windowActionModeOverlay">true</item>
<item name="android:windowLayoutInDisplayCutoutMode" tools:targetApi="p">shortEdges</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="colorPrimary">@color/light_primary</item>
<item name="colorPrimaryDark">@color/light_primary</item>
<item name="colorAccent">@color/green_500</item>
<item name="android:windowBackground">@color/light_primary</item>
<!--ActionMode-->
<item name="actionModeStyle">@style/ActionMode</item>
</style>发布于 2018-08-17 04:21:33
我将搜索“主题”相关属性来更改actionbar字体,因为我相信它与此相关。这里有一个类似问题的链接:How can I customize the Action Mode's color and text?
它使用“Size”属性来完成这项工作。
<style name="Widget.ActionMode">
<item name="android:background">?android:attr/actionModeBackground</item>
<item name="android:backgroundSplit">?android:attr/actionModeSplitBackground</item>
<item name="android:height">?android:attr/actionBarSize</item>
<item name="android:titleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Title</item>
<item name="android:subtitleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Subtitle</item>
</style>https://stackoverflow.com/questions/51884624
复制相似问题