Android 自定义操作栏按钮样式颜色问题

Android 自定义操作栏按钮样式颜色问题,android,android-actionbar,Android,Android Actionbar,我目前正在开发一个聊天应用程序,我希望聊天活动标题可以点击,这样我就可以开始另一个活动。我使用定制的ActionBar和布局代码实现了这一点: 但是,这与本机操作栏的样式不匹配,因为ripple动画颜色与其他导航按钮不同: 这就是本机按钮的外观 这就是我的文本在点击时的样子 如何将其更改为本机用户界面?Ripple size 自API 23以来,动作按钮上的波纹直径为40dp。将此添加到文本视图中: android:background="?selectableItemBackgroun

我目前正在开发一个聊天应用程序,我希望聊天活动标题可以点击,这样我就可以开始另一个活动。我使用定制的ActionBar和布局代码实现了这一点:


但是,这与本机操作栏的样式不匹配,因为ripple动画颜色与其他导航按钮不同:


这就是本机按钮的外观


这就是我的文本在点击时的样子

如何将其更改为本机用户界面?

Ripple size 自API 23以来,动作按钮上的波纹直径为40dp。将此添加到
文本视图中

android:background="?selectableItemBackgroundBorderless"
删除
样式
属性。不要在不理解其含义的情况下滥用样式,这显然不是一个导航按钮

波纹色 在膨胀视图时,您需要获得最中间的上下文,以便正确解析主题属性,例如
?SelectableItemBackgroundless

选项a)

您可以直接在XML布局文件的
工具栏中查看
TextView

选项b)

手动将
TextView
添加到工具栏时,使用所述
工具栏中的
LayoutInflater

val context = toolbar.context
val inflater = LayoutInflater.from(context)
选项c)

将此
TextView
设置为
ActionBar
自定义视图时,请使用操作栏的主题上下文

val context = supportActionBar!!.themedContext
val inflater = LayoutInflater.from(context)
文本颜色 替换

android:textColor="#FFFFFF"
android:textSize="20sp"


对于从主题继承的标准字体大小和文本颜色,以防您开始使用light Action Bar。

谢谢您的回答,但我已经尝试过了,涟漪看起来仍然不像本地涟漪,因为它是原来的三倍大:/。还有什么想法吗?@没有设定半径的两米涟漪在视图周围画成一个圆圈
android:layout\u width=“wrap\u content”
就可以了。谢谢,主题上下文修复了它:),现在看起来很完美。
android:textAppearance="@style/TextAppearance.Widget.AppCompat.Toolbar.Title"