android - 是否可以在没有 FEATURE_CUSTOM_TITLE 的情况下更改 Activity 标题栏的颜色?

标签 android android-titlebar

到目前为止,我找到的所有更改 Activity 标题栏颜色的解决方案(即通过 activity.setTitle()activity.setProgress() 访问的标题栏)都要求 FEATURE_CUSTOM_TITLE:

https://stackoverflow.com/a/2285722/869501

但我已经在使用 FEATURE_PROGRESS 并且 Android 禁止将自定义标题与其他标题功能相结合(通过 AndroidRuntimeException),我不想放弃那个漂亮的进度条,它是我的 Activity 。

关于在没有 FEATURE_CUSTOM_TITLE 的情况下更改 Activity 标题栏颜色的可能性的唯一提示是在 another SO thread 中。 :

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 吗?)

最佳答案

简短的回答(目前,直到出现更好的答案):

关于android - 是否可以在没有 FEATURE_CUSTOM_TITLE 的情况下更改 Activity 标题栏的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11263829/

相关文章:

android - 如何隐藏/删除android中的标题栏

安卓工作室 : Activity preview does not show title bar

android - 如何在主 Activity 中隐藏标题栏 : I'm Using Android Studio

android - findViewById(android.R.id.progress) 返回 null

java - 如何在 Android Q (API 29) 上将文件保存到公共(public)(外部)存储?

android - 通过更改 Android 中的应用程序语言来更改默认手机语言?

Android 应用内结算获取对话框,如 “item not found”

android - 为什么我得到 getDatabaseLocked?

android - 我只能在某些版本的 Android 中需要权限吗?

android - 在 fragment 中隐藏状态栏