ホーム
2022.3.14

kotlin メニューをつける

メニューアイテムのリソースファイル(ここではmenu_main.xml)を作成して、
アクティビティ(ここではMainActivity.kt)内で読み込んで、
メニューアイテムが選択されたときの処理を記述します。

menu_main.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

<item
android:id="@+id/menu1"
android:title="メニュー1" />
<item
android:id="@+id/menu2"
android:title="メニュー2" />
</menu>

MainActivity.kt

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import android.widget.Toast

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}

override fun onCreateOptionsMenu(menu: Menu?): Boolean {
val inflater = menuInflater
inflater.inflate(R.menu.menu_main, menu)
return super.onCreateOptionsMenu(menu)
}

override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when(item.itemId){
R.id.menu1 -> {
Toast.makeText(this, "selected menu1.", Toast.LENGTH_SHORT).show()
true
}
R.id.menu2 -> {
Toast.makeText(this, "selected menu2.", Toast.LENGTH_SHORT).show()
true
}
else -> {
super.onOptionsItemSelected(item)
}
}
}
}