teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

記載内容を変更

2020/02/13 21:53

投稿

old_dog
old_dog

スコア51

title CHANGED
@@ -1,1 +1,1 @@
1
- android メインアクティビティのToolbar(ActionBar)の設定を、他のアクティビティでも使いたい
1
+ android メインアクティビティのToolbarのオーバーフローメニューの設定を、他のアクティビティでも使いたい
body CHANGED
@@ -1,9 +1,13 @@
1
- <質問>
1
+ <質問>ToolBarについて
2
- AndroidのToolbarやActionBarを複数のActivityにセットするときに複数の各Activityに同じ設定(onOptionsItemSelected()の内容が全く同じ)施したいのですが、場合各ActivityともonOptionsItemSelected()メソッドを記載しいとなりせんか?
2
+ 複数のActivity.javaでToolBarを実装して全く同じオーバーフローメニューを作りたいと考えています。全く同じオーバーフローメニューなで、各Activity.java全く同じ内容のonOptionsItemSelected()を記述ることになりすが、同じコードなで記載個所は一か所し、各Activity.javaから参照させるように記載しいと考えてす。
3
3
 
4
+ <試みたこと>
4
- onOptionsItemSelected()の内容が全く同じなら、例えばMainActivity.javaに記載したonOptionsItemSelected()を、他のActivityから参照したりできたらいいなと考えてます
5
+ MainActivity.javaにonOptionsItemSelected()を記載し各子Activity.javaからMainActivity.javaのonOptionsItemSelected()を参照させる
5
6
 
7
+ <エラー>
8
+ onOptionsItemSelected()のpackageContextのところでエラー(NullPointerException)がでます。呼び出し元のActivity.javaのContextが渡せていないからだと思うのですが、どう扱っていいか分かりません。
9
+
6
- やはりonOptionsItemSelected(MenuItem item)メソッドは、各Activity毎に記載しないとならないでしょうか?例えば、ScondActivity.javaのコードはエラーになるのですが、こんな感じで他のactivityから、MainActivityのonOptionsItemSelected()を使えたら、と模索してます。
10
+ 例えば、ScondActivity.javaのコードはエラーになるのですが、こんな感じで他のactivityから、MainActivityのonOptionsItemSelected()を使えたら、と模索してます。
7
11
  いい方法はないでしょうか?よろしくご教授お願いします。
8
12
 
9
13
  ```MainActivity