Android 5.0:如何更改最近的应用标题颜色?


67

我正在使用AppCompat并且主题正在扩展Theme.AppCompat.Light.DarkActionBar

在Android 5 Lollipop中,当我按下“最近使用的应用程序”按钮时,我的应用程序在ActionBar中显示为黑色标题而不是白色标题。

当我进入应用程序时,一切看起来都很好。

如何在最近的应用程序视图中更改标题颜色?

编辑:刚发现,如果我使用较暗colorPrimary,标题将变为白色。我仍然需要一种方法来强制白色标题使用原始颜色。

在此处输入图片说明


1
我没有将较深的颜色用作colorPrimary,而是将最近的颜色设置为colorPrimaryDark。就像状态栏的颜色更深一样,最近的颜色对我来说也更深,标题变成白色。我认为这是最好的方法。谢谢您的提问和伟大的应用程序
万里无云

Answers:



39

我也对此进行了研究,发现的最佳方法是(来自MrEngineer13的建议)将我最近使用的应用程序颜色设置为我的原色的600值

Bitmap bm = BitmapFactory.decodeResource(getResources(), app_icon);
TaskDescription taskDesc = new TaskDescription(getString(R.string.app_name), bm, getResources().getColor(R.color.primary_600));
MainActivity.setTaskDescription(taskDesc);

如果您仔细查看Android 5.0联系人应用程序,您会发现Google本身也在做类似的事情:

Android联系人截图

因此,我相信您无法自行更改标题颜色,但Android会为您选择一个好的颜色。(这也将允许Android出于可访问性原因对其进行更改,...)


尽管我想设置自己的蓝色,但该衣服也可以在应用程序上使用。谢谢!
大卫·科拉尔

2
谢谢!这是真正的答案。我在调色板上使用了“白色文字”。例如,浅蓝色600-#039BE5,调色板在网站上显示白色标签。
贾里德·伯罗斯

26

要更改颜色/标题/图标,您只需要使用以下内容:

TaskDescription tDesc = new TaskDescription(mTitle, mIcon, mColor);
MainActivity.setTaskDescription(tDesc);

3
这仅允许您更改背景/原色,而不能更改标题。它仍然很有用,因为我可以选择稍深的背景颜色,并且标题会自动变为白色,但是我仍然希望能够直接更改标题颜色。
ChristianGöllner2014年

2
关于TaskDescription并给出了一个例子本文会谈bignerdranch.com/blog/...
Maragues

该代码放在哪里?在我主要活动的创造中?
马歇尔

@Marshall:存放此代码的好地方是onResume()。只是想出了它不能用的艰难方式onCreate()
user149408

Typeface可以为此设置吗?
Sathish Kumar J
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.