Android 添加工具栏

示例

AToolbar是ActionBar在应用程序布局中使用的概括。而一个ActionBar是传统上的一部分Activity's由所述框架来控制不透明窗口装饰,Toolbar可被放置在视图体系内的嵌套的任意水平。可以通过执行以下步骤来添加它:

  1. 确保在依赖项下将以下依赖项添加到模块(例如应用程序)的build.gradle文件中:

    compile 'com.android.support:appcompat-v7:25.3.1'
  2. 为您的应用程序,主题设置为一,它具有的ActionBar。为此,请在下编辑您的styles.xml文件res/values并设置一个Theme.AppCompat主题。
    在此示例中,我们将Theme.AppCompat.NoActionBar作为您的父项AppTheme:

    <style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
       <item name="colorPrimary">@color/primary</item>
       <item name="colorPrimaryDark">@color/primaryDark</item>
       <item name="colorAccent">@color/accent</item>
    </style>

    您也可以使用Theme.AppCompat.Light.NoActionBar或Theme.AppCompat.DayNight.NoActionBar,或任何其他固有不具有主题的主题ActionBar

  1. 将添加Toolbar到您的活动布局:

    <android.support.v7.widget.Toolbar
       android:id="@+id/toolbar"
       android:layout_width="match_parent"
       android:layout_height="?attr/actionBarSize"
       android:background="?attr/colorPrimary"
       android:elevation="4dp"/>

    在下方,Toolbar您可以添加其余的布局。

  1. 在你的Activity,设置Toolbar为ActionBar这个Activity。假设您正在使用appcompat库和一个AppCompatActivity,则可以使用以下setSupportActionBar()方法:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
       setSupportActionBar(toolbar);

       //...
    }

完成上述步骤后,您可以使用getSupportActionBar()方法来操作Toolbar设置为的ActionBar。

例如,您可以设置标题,如下所示:

getSupportActionBar().setTitle("Activity Title");

例如,您还可以设置标题和背景颜色,如下所示:

CharSequence title = "Your App Name";
SpannableString s = new SpannableString(title);
s.setSpan(new ForegroundColorSpan(Color.RED), 0, title.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
getSupportActionBar().setTitle(s);
getSupportActionBar().setBackgroundDrawable(new ColorDrawable(Color.argb(128, 0, 0, 0)));