到目前为止,我发现的所有用于更改活动标题栏颜色的解决方案(即通过activity.setTitle()和activity.setProgress()访问的解决方案)都要求FEATURE_CUSTOM_TITLE
:
https://stackoverflow.com/a/2285722/869501
但是我已经在使用FEATURE_PROGRESS
并且 Android 禁止将自定义标题与其他标题功能(通过 AndroidRuntimeException 的方式)相结合,我不想放弃作为我活动不可或缺的一部分的漂亮进度条。
关于在没有 FEATURE_CUSTOM_TITLE 的情况下更改活动标题栏颜色的可能性的唯一提示是在另一个 SO 线程中:
View titleView = getWindow().findViewById(android.R.id.titlebar);
if (titleView != null) {
ViewParent parent = titleView.getParent();
if (parent != null && (parent instanceof View)) {
View parentView = (View)parent;
parentView.setBackgroundColor(Color.RED);
}
}
但是如果我尝试按原样使用代码,则android.R.id.titlebar
无法解决!
我在哪里可以找到那个android.R.id.titlebar
?
我必须自己定义吗?(如果答案是肯定的,这本质上不是 FEATURE_CUSTOM_TITLE 吗?)