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

Mac*_*ver 4 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>"));
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Boj*_*man 12

而不是getActionBar()使用getSupportActionBar()

编辑:

您收到错误,因为您的导入错误.请使用以下相同的内容.这很好用.

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>"));
    }
}
Run Code Online (Sandbox Code Playgroud)

是的,这是谷歌的错误,应该有不同的名称.SupportActionBar会很棒.

如果您无法修复导入,则可以明确指定这样的导入

android.support.v7.app.ActionBar actionBar = getSupportActionBar();
Run Code Online (Sandbox Code Playgroud)