toolbar的xml:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:background="@color/colorPrimary"
android:layout_height="?attr/actionBarSize"
android:layout_width="match_parent" >
</android.support.v7.widget.Toolbar>
toolbar的代码引用:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
//去除Toolbar标题
getSupportActionBar().setDisplayShowTitleEnabled(false);
//设置菜单点击监听
toolbar.setOnMenuItemClickListener(onMenuItemClick);
toolbar的menuxml:
路径:res/menu/menu_main.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/menu_add"
android:title="Add"
android:orderInCategory="80"
app:showAsAction="always" />
<item android:id="@+id/menu_del"
android:title="Del"
android:orderInCategory="80"
app:showAsAction="always" />
<item android:id="@+id/menu_addmore"
android:title="AddMore"
android:orderInCategory="80"
app:showAsAction="always" />
<item android:id="@+id/menu_move"
android:title="Move"
android:orderInCategory="80"
app:showAsAction="always" />
</menu>
toolbar的onclick:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return super.onCreateOptionsMenu(menu);
}
private Toolbar.OnMenuItemClickListener onMenuItemClick = new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
switch (menuItem.getItemId()) {
case R.id.menu_add:
break;
case R.id.menu_del:
break;
case R.id.menu_move:
break;
case R.id.menu_addmore:
break;
}
return true;
}
};
toolBar的一些其他功能:
colorPrimaryDark
状态栏背景色。
在 style 的属性中设置。
textColorPrimary
App bar 上的标题与更多菜单中的文字颜色。
在 style 的属性中设置。
App bar 的背景色
Actionbar 的背景色设定在 style 中的 colorPrimary。
Toolbar 的背景色在layout文件中设置background属性。
colorAccent
各控制元件(如:check box、switch 或是 radoi) 被勾选 (checked) 或是选定 (selected) 的颜色。
在 style 的属性中设置。
colorControlNormal
各控制元件的预设颜色。
在 style 的属性中设置
windowBackground
App 的背景色。
在 style 的属性中设置
navigationBarColor
导航栏的背景色,但只能用在 API Level 21 (Android 5) 以上的版本
在 style 的属性中设置