android menuitem 字体颜色,android-如何设置MenuItem的图标颜色?
android-如何设置MenuItem的图标颜色?
我定义了一个具有ShareActionProvider并共享白色图标的菜单项,如下所示:
android:icon="@drawable/ic_share_white_24dp"
android:id="@+id/action_share"
android:title="@string/action_share"
android:orderInCategory="200"
app:showAsAction="ifRoom"
app:actionProviderClass="android.support.v7.widget.ShareActionProvider"/>
但是,当我启动该应用程序时,我得到了另一个黑色共享图标。 如何将共享图标设置为白色?
这是我的结果
Dimitri asked 2020-06-21T14:03:13Z
7个解决方案
66 votes
该图标实际上是由ShareActionProvider提供的,您无法对其进行更改。 但是,您可以通过在styles.xml中设置textColorPrimary来自定义颜色:
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:theme="@style/MyActionBarTheme"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
#fa0
对于任何自定义图标,您都必须自己为它们着色。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
for(int i = 0; i < menu.size(); i++){
Drawable drawable = menu.getItem(i).getIcon();
if(drawable != null) {
drawable.mutate();
drawable.setColorFilter(getResources().getColor(R.color.textColorPrimary), PorterDuff.Mode.SRC_ATOP);
}
}
return true;
}
tachyonflux answered 2020-06-21T14:05:01Z
39 votes
这是一个主题问题。 根据您当前的主题,您需要设置正确的ActionBar叠加主题。 动作提供者读取主题中的值(指示主题是深色还是浅色)以确定图标的颜色。
如果主主题是浅色,而ActionBar是黑暗,则ActionBar /工具栏必须使用主题ThemeOverlay.AppCompat.Dark.ActionBar。
BladeCoder answered 2020-06-21T14:04:36Z
32 votes
试试这个 :
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.MENU, menu);
// change color for icon 0
Drawable yourdrawable = menu.getItem(0).getIcon(); // change 0 with 1,2 ...
yourdrawable.mutate();
yourdrawable.setColorFilter(getResources().getColor(R.color.white), PorterDuff.Mode.SRC_IN);
return true;
}
druci answered 2020-06-21T14:05:20Z
25 votes
简短而甜蜜的答案-> app:iconTint =“ @ color / yourcolor
在MenuItem中添加app:iconTint="@color/yourcolor",以更改图标颜色。
android:icon="@drawable/ic_share_white_24dp"
android:id="@+id/action_share"
android:title="@string/action_share"
android:orderInCategory="200"
app:iconTint="@color/yourcolor"
app:showAsAction="ifRoom"
app:actionProviderClass="android.support.v7.widget.ShareActionProvider"/>
Nikunj Paradva answered 2020-06-21T14:05:48Z
3 votes
简短的答案->使用app:iconTint="?android:textColorPrimary"如果您希望图标颜色为白色,请输入:android:theme = "@style/ThemeOverlay.MaterialComponents.Dark.ActionBar"否则,如果要黑色,请输入:android:theme="@style/ThemeOverlay.MaterialComponents.Light"到您的工具栏
answered 2020-06-21T14:06:08Z
1 votes
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater menuInflater) {
menuInflater.inflate(R.menu.menu_confirm, menu);
MenuItem action_done = menu.findItem(R.id.action_done);
action_done.setIcon(R.drawable.ic_filter);
Utils.menuIconColor(action_done, Color.WHITE);
super.onCreateOptionsMenu(menu, menuInflater);
}
public static void menuIconColor(MenuItem menuItem, int color) {
Drawable drawable = menuItem.getIcon();
if (drawable != null) {
drawable.mutate();
drawable.setColorFilter(color, PorterDuff.Mode.SRC_ATOP);
}
}
Ahamadullah Saikat answered 2020-06-21T14:06:23Z
0 votes
这种现象是预期的,因为ShareActionProvider是
负责创建实现数据共享的视图,并负责 如果放置了托管项目,则显示带有共享活动的子菜单 在溢出菜单上。
根据文档。
这意味着使用视图时,您无法控制其自定义。
Robert Estivill answered 2020-06-21T14:06:58Z
android menuitem 字体颜色,android-如何设置MenuItem的图标颜色?相关推荐
- android span字体修改,Android TextView使用SpannableString设置复合文本的方法详解
本文实例讲述了Android TextView使用SpannableString设置复合文本的方法.分享给大家供大家参考,具体如下: TextView通常用来显示普通文本,但是有时候需要对其中某些文本 ...
- android roboto字体下载,Android字体设置及Roboto字体使用方法
本文实例讲述了Android字体设置及Roboto字体使用方法.分享给大家供大家参考.具体分析如下: 一.自定义字体 1.android Typeface使用TTF字体文件设置字体 我们可以在程序中放 ...
- Android自定义折线图,可设置基准线,不同点颜色
最近项目中需要用到折线图,发现了一款比较好用的折线图hellocharts,做了炫酷的动画以及折线图,柱状图,混合图都有涉及到,非常的棒,在此推荐一下. 但是使用过程中碰到这样的需求: ①:不同数据点 ...
- android 布局 字体大小,android布局文件怎样设置字体
Android系统默认支持三种字体,分别为:"sans", "serif", "monospace",除此之外还可以使用其他字体文件(*.t ...
- android设置webview光标颜色,CSS自定义设置元素闪烁光标颜色
这次给大家带来CSS自定义设置元素闪烁光标颜色,CSS自定义设置元素闪烁光标颜色的注意事项有哪些,下面就是实战案例,一起来看一下. 前言因为业务需求, 要求我们的input框内的文本与悬浮的光标颜色不 ...
- android白色字体代码,Android实现状态栏白底黑字效果示例代码
前言 本文主要给大家介绍了关于Android如何实现状态栏白底黑字的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 一.描述 在项目中有的时候Ui设计状态栏背景颜色是白色的 ...
- Android通知栏字体大小,Android通知栏介绍与适配总结(上篇)
此文已由作者黎星授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 由于历史原因,Android在发布之初对通知栏Notification的设计相当简单,而如今面对各式各样的通知 ...
- android textview 字体阴影,Android TextView加上阴影效果
废话不多说直接说关键的: 字体阴影需要四个相关参数: 1. android:shadowColor:阴影的颜色2. android:shadowDx:水平方向上的偏移量3. android:shado ...
- android list字体大小,android自定义ListPreference字体大小
这篇博客算是自己的一个记录吧,组长给了一个任务,需要实现一个紧急广播的一系列设置功能,但是客户那边设置界面的字体大小有特殊的要求,看了一下,对于ListPreference这样的控件,android系 ...
最新文章
- Android --- 很好用的时间选择器
- 11 ORA系列:ORA-01791: 不是 SELECTed 表达式(distinct使用注意点)
- 如何在局域网内查找病毒主机
- reactjs DOM的Diffing算法
- .Net 分布式云平台基础服务建设说明概要
- python 中的if else 和in
- sever2008 ad用户和计算机不见,windows-server-2008 – 当我使用Powershell将用户添加到安全组时,它们不会显示在AD中...
- COMSOL随机裂缝生成
- Linux系统上安装微信 QQ , 还在用wine ? 快弃坑吧 ,xDroid尝试一下!!!
- JAVA proxy dns回源_常见问题 - CDN 回源配置相关问题
- 利用TouchDelegate提升用户体验
- 蓝牙电话之HFP-通话
- JSON.stringify(value[, replacer[, space]])中三个参数详解
- python双样本t检验_两样本t检验的scipy实现
- Android:检查通知权限并跳转到通知设置界面
- mysql查询每门课程成绩最好的前两名学生id和姓名
- java script中extends,JavaScript继承之ES6的extends
- MATLAB画曲线图
- 算法分析与设计期末总结
- [转载] 晓说——第19期:千年科举那些事——官场
热门文章
- Windows上有哪些好用的 ePub 阅读器?推荐三款,亲测好用
- java中对文件的操作,以及目录间隔符file.separator的使用
- python+find_all函数_BeautifulSoup库之find_all函数
- QFile.readall();最多读取1G
- 是“药”三分毒:新冠病毒会开启监控文化吗?
- 非985、211毕业的你,真的找不到好工作吗?
- css实现背景透明,内容不透明
- mysql增删改查,连表,排序,等
- 软件测试知识汇总(一)
- 老程序员被裁怎么办?他选择成为了自由职业者