如何解决操作栏中的标题文字颜色未更改
public void setActionBarTitle(String title) {
getSupportActionBar().setTitle(title);
Log.d("action bar id","action bar id title previo: "+title);
}
public void setActionBarTitleTextColor(String color) {
int actionBarTitleId = Resources.getSystem().getIdentifier("action_bar_title","id","android");
Log.d("action bar id","action bar id "+actionBarTitleId);
if (actionBarTitleId > 0) {
TextView title = (TextView) findViewById(actionBarTitleId);
Log.d("action bar id","action bar id title: "+title);
if (title != null) {
title.setTextColor(Color.parseColor(color));
}
}
}
我可以获得int actionBarTitleId
的值,在这种情况下为:
D/action bar id: action bar id 16908676
但是在方法setActionBarTitleTextColor
中,TextView标题中的文本始终被识别为null:
D/action bar id: action bar id title: null
这就是我从片段expl_especialidad_color_texto = #008080
((MainActivity) getActivity())
.setActionBarTitleTextColor(expl_especialidad_color_texto);
解决方法
我对方法setActionBarTitleTextColor()
使用以下解决方法解决了该问题:
public void setActionBarTitleTextColor(String color,String title) {
getSupportActionBar().setTitle(HtmlCompat.fromHtml("<font color='"+color+"'>"+title+"</font>",HtmlCompat.FROM_HTML_MODE_LEGACY));
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。