質問編集履歴
1
試したことの追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -2,12 +2,47 @@
|
|
2
2
|
|
3
3
|
アプリ製作初心者です。「はじめてのAndroidプログラミング第3版」という教材を読みながらandroid studioでじゃんけん目覚ましアプリ(設定した時間になったあとじゃんけんに勝てばアラームが停止する)を作成しています。
|
4
4
|
|
5
|
-
じゃんけんに勝った場合Mediaplayerを停止したいのですが、
|
5
|
+
じゃんけんに勝った場合Mediaplayerを停止したいのですが、いい停止方法がわかりません。
|
6
|
+
停止方法を教えていただければ幸いです。
|
6
7
|
|
8
|
+
### 試したこと
|
7
9
|
|
10
|
+
アラームをセットした時間になるとJankenActivityの画面に移りMediaplayerが実行されます。さらにJankenButtonをタップするとJankenResultActivityの画面へ移るようになっています。
|
8
11
|
|
9
12
|
|
13
|
+
JankenResultActivityでgameResultの結果が1の場合、player.stop()で停止しようとすると音楽は停止するのですが、showメソッドが呼び出されなくなりダイアログが表示されなくなってしまいます。
|
10
14
|
|
15
|
+
|
16
|
+
|
17
|
+
```JankenResultActivity
|
18
|
+
|
19
|
+
val gameResult = (comHand - myHand + 3) % 3
|
20
|
+
when(gameResult) {
|
21
|
+
0 -> resultLabel.setText("あいこ!")
|
22
|
+
1 -> resultLabel.setText(" あなたの勝ち!")
|
23
|
+
2 -> resultLabel.setText("コンピュータの勝ち!")
|
24
|
+
}
|
25
|
+
|
26
|
+
when(gameResult) {
|
27
|
+
0 -> resultLabel1.setText("アラームを続けるよ")
|
28
|
+
1 -> resultLabel1.setText(" アラームを停止するよ")
|
29
|
+
2 -> resultLabel1.setText("アラームを続けるよ")
|
30
|
+
}
|
31
|
+
|
32
|
+
val dialog = SimpleAlertDialog()
|
33
|
+
|
34
|
+
//音は停止するがshowメソッドが呼び出されない
|
35
|
+
when(gameResult) {
|
36
|
+
1 -> dialog.show(supportFragmentManager, "alert_dialog")
|
37
|
+
}
|
38
|
+
|
39
|
+
when(gameResult) {
|
40
|
+
1 -> player.stop()
|
41
|
+
}
|
42
|
+
```
|
43
|
+
|
44
|
+
|
45
|
+
|
11
46
|
### 該当のソースコード
|
12
47
|
|
13
48
|
```kotlin
|
@@ -94,6 +129,7 @@
|
|
94
129
|
|
95
130
|
val dialog = SimpleAlertDialog()
|
96
131
|
|
132
|
+
//音は停止するがshowメソッドが呼び出されない
|
97
133
|
when(gameResult) {
|
98
134
|
1 -> dialog.show(supportFragmentManager, "alert_dialog")
|
99
135
|
}
|