Toolbar
- 取消自带ActionBar
// - res/values/styles.xml
// ...
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
// ...
- activity_main.xml
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/design_default_color_primary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/Theme.AppCompat.Light"
tools:ignore="MissingConstraints" />
- MainActivity
onCreate() {
// ...
setSupportActionBar(toolbar)
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.toolbar, menu)
return true
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.itemId) {
R.id.backup -> Toast.makeText(this, "backup", Toast.LENGTH_LONG).show()
R.id.delete -> Toast.makeText(this, "delete", Toast.LENGTH_LONG).show()
R.id.setting -> Toast.makeText(this, "setting", Toast.LENGTH_LONG).show()
}
return true
}
- 添加菜单项
- res下新建menu文件夹,新建toolbar资源文件
<?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">
<item
android:id="@+id/backup"
android:icon="@drawable/ic_backup"
android:title="Backup"
app:showAsAction="always" />
<item
android:id="@+id/delete"
android:icon="@drawable/ic_delete"
android:title="Delete"
app:showAsAction="ifRoom" />
<item
android:id="@+id/setting"
android:icon="@drawable/ic_setting"
android:title="Setting"
app:showAsAction="never" />
</menu>