java - 使用 AppCompat 以编程方式更改操作栏背景和文本颜色

标签 java android

我正在尝试使用 AppCompat 以编程方式更改操作栏的背景颜色和文本颜色。这是我之前使用 Holo 主题时使用的代码,但似乎我不能将相同的东西用于 AppCompat。有人知道我需要更改什么吗?

ActionBar bar = getActionBar();
    bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#95CDBA")));
    getActionBar().setTitle(Html.fromHtml("<font color='#000099'>Hello World</font>"));

enter image description here

最佳答案

使用 getSupportActionBar() 代替 getActionBar()

编辑:

您遇到错误,因为您的导入有误。请使用与以下相同的内容。这很好用。

import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
import android.text.Html;

public class TestActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ActionBar actionBar = getSupportActionBar();
        actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#95CDBA")));
        actionBar.setTitle(Html.fromHtml("<font color='#000099'>Hello World</font>"));
    }
}

是的,这是谷歌的错误,它应该有一个不同的名字。 SupportActionBar 会很棒。

如果您无法修复导入,您可以像这样明确指定哪一个

android.support.v7.app.ActionBar actionBar = getSupportActionBar();

关于java - 使用 AppCompat 以编程方式更改操作栏背景和文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29804825/

相关文章:

Android/ZXing 不再有效

java - 模拟 Spring 安全类

java - 有效地计算物体的位置、速度和其他运动导数

java - Spring Web MVC : Regex in controller mapping

android - FFmpegFrameRecorder 在录制时添加文本/图像

android - 如何将垂直项目添加到gridview

java - 使用 Java 解析文本文件

java - 使用 StepVerifier 测试 Mono.delay

java - 使用 htmlparser 解析网站时无法获取所有匹配的节点

android - 激活 gps 提示 phonegap 应用程序