建立一個新的 Activity 來做為目標 Activity
建立一個 Empty Activity,在此以 AboutActivity 為例,其內容無需更改
建立 Toolbar 的 Menu
New -> Android Resource File ,File name 填入 menu_toolbar,Resource type 選 Menu
menu_toolbar.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_about"
android:title="關於"
app:showAsAction="ifRoom" />
</menu>
讓 Activity 載入 menu,並設定 menu 的回應
MainActivity.kt
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val toolbar = findViewById<MaterialToolbar>(R.id.toolbar)
setSupportActionBar(toolbar)
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.menu_toolbar, menu)
return super.onCreateOptionsMenu(menu)
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when(item.itemId) {
R.id.action_about-> {
startActivity(Intent(this, AboutActivity::class.java))
return true
}
}
return super.onOptionsItemSelected(item)
}
}
執行 app 時,可看到右上角出現「關於」,按下後,就會導航到 AboutActivity。
AboutActivity 並沒有 Toolbar,因為我們在 themes 裏設定為 NoActionBar,必須參照前一個 Kata 來設定其內容。
Comments