Android ToolBar

437 查看

组成部分

  1. 导航,左边第一个
  2. logo,左边第二个
  3. 标题和子标题
  4. 自定义View
  5. action menu

基本用法

ToolBar可以独立实现所有功能,不需要调用setSupportActionBar

导航

logo

toolbar.setLogo(R.drawable.ic_launcher);

标题和子标题

toolbar.setTitle("Title");
toolbar.setSubtitle("Subtitle");

自定义View

自定义View会在标题与action menu之间,如果导航、logo和标题都没有话,自定义View的空间就很大了。相对与导航栏,我更喜欢这样的设计。

代码

TextView textView = new TextView(this);
textView.setText("自定义View");

toolbar.addView(textView);

XML

与LinearLayout等一样,直接放在里面就行

<android.support.v7.widget.Toolbar
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="自定义View" />

</android.support.v7.widget.Toolbar>

action menu

toolbar.inflateMenu(R.menu.menu_main);
// 要在setSupportActionBar之后调用
toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
    @Override
    public boolean onMenuItemClick(MenuItem menuItem) {
        switch (menuItem.getItemId()) {
            case R.id.action_settings:
                break;
        }
        return true;
    }
});