从 ActionBar 迁移到 ToolBar

Migrate from ActionBar to ToolBar

我需要升级应用程序才能使用 Material Design。我要做的第一件事是展示新的 Toolbar,但我不确定我应该怎么做。

我有我的主要 FragmentActivity,我给它充气一些 menu 然后做:

getActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.main_color)));

我也用NavigationDrawer,所以我也给抽屉设置了一个图标

也就是说,我怎样才能使用新的 Toolbar 实现相同的行为?

看看 android developers blog。它包含 "how to"

的解释

不久

工具栏添加到您的activity布局

中,就像视图一样
<android.support.v7.widget.Toolbar
    android:id="@+id/my_awesome_toolbar"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:minHeight="?attr/actionBarSize"
    android:background="?attr/colorPrimary" />

您应该将 Toolbar 设置为 ActionBar

Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
setSupportActionBar(toolbar);

别忘了造型。添加新的 style.xml 到资源目录 values-21v,之后你的 Toolbar 将由您的 colorPrimary

着色
<style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
    <!-- colorPrimary is used for the default action bar background -->
    <item name=”colorPrimary”>@color/my_awesome_color</item>

    <!-- colorPrimaryDark is used for the status bar -->
    <item name=”colorPrimaryDark”>@color/my_awesome_darker_color</item>

    <!-- colorAccent is used as the default value for colorControlActivated,
     which is used to tint widgets -->
    <item name=”colorAccent”>@color/accent</item>

    <!-- You can also set colorControlNormal, colorControlActivated
     colorControlHighlight, and colorSwitchThumbNormal. -->

</style>