AndroidStudio 静的メニューの定義
参考書「作って楽しむプログラミング Androidアプリ超入門」の勉強をまとめていきます。
メニューを定義する
android端末でメニューボタンをタッチすると、設定や、保存などのオプションメニューが表示される。
メニューには、あらかじめ決められた項目を表示する静的メニューと、アプリの状態に応じて変更する動的メニューがある。
今回は静的メニューを作成する
メニューの定義はXMLファイルを作成する
->AndroidStudioでresフォルダを右クリックし、New > Android Resource File
<?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">
//item1つに1のメニュー内容を記載
//android:id ;選択肢のid
//android:title ; 表示文字列
<item android:id="@+id/item1" android:title="設定"></item>
<item android:id="@+id/item2" android:title="このアプリについて"></item>
</menu>
item属性の中には、app:showAsAction : アクションバーに表示するかどうかもある。
メニューを表示する
オプションメニューを表示するには、画面のタッチやセンサーを利用する場合と同様にイベントに応じて呼び出されるコードを追加する。
しかし、メニューの場合は、新たにイベントリスナーを設定する必要はなく、Activityクラスのメソッド(あらかじめ呼び出されるメソッドが定義されている)をオーバーライドするだけで表示ができる。
->AndroidStudioのmainActivity.kt > Codeメニュー > Overrride Menthods >イベント毎のメソッドを選択
主なメニューのイベント
メニューのイベント | 実行されるメソッド | タイミング |
---|---|---|
メニューが作成される時 | onCreateOptionMenu | 起動時のみ |
メニュー表示する時 | onPrepareOptionMenu | 毎回 |
メニューの項目を選択した時 | onOptionsItemSelected | 選択時のみ |
メニューが閉じられる時 | onOptionMenuClosed | 毎回 |
参考
https://qiita.com/watataku8911/items/5faad0384b54d0c53f6e
https://developer.android.com/guide/topics/resources/menu-resource?hl=ja
Author And Source
この問題について(AndroidStudio 静的メニューの定義), 我々は、より多くの情報をここで見つけました https://qiita.com/nipp/items/67878b3447822ac24891著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .