我的工具栏标题需要能够根据按钮点击更改颜色。例如,工具栏标题的默认颜色为白色,但如果按下按钮,我希望它更改为红色。
我尝试使用以下内容:
SpannableString title;
title.setSpan(new ForegroundColorSpan(Color.argb(1, 255, 64, 129)), 0, remainingTitle.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
但由于某种原因,颜色不想改变。它曾经与actionbar一起使用,但由于某种原因,这个方法不适用于工具栏。
答案 0 :(得分:6)
您可以使用以下内容:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setTitle("Hello");
toolbar.setTitleTextColor(Color.RED);//for red colored toolbar title
答案 1 :(得分:3)
Toolbar
可以更改其文字颜色。所以,只需致电Toolbar.setTitleTextColor(int color)
。
如果您想跨文本,则需要致电TextView.setText(SpannableString)
。这是一个例子:
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
Spannable wordtoSpan = new SpannableString("I know just how to whisper, And I know just how to cry,I know just where to find the answers");
//Handle with your Span here. Like change color of part text, bold or italic part text, add hypertext and something like that.
wordtoSpan.setSpan(new ForegroundColorSpan(Color.BLUE), 15, 30, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
toolbar.setText(wordtoSpan);
答案 2 :(得分:3)
使用 v7 appcompat库,您可以在工具栏上调用setTitleTextColor()
if (actionBarToolbar != null)
actionBarToolbar.setTitleTextColor(Color.RED);
整个标题中的几个字母:
getActionBar().setTitle(Html.fromHtml("<font color='#ff0000'>YourColorText</font>") + "tittle");