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

回答編集履歴

2

checkactofkoma_subfunc_promoteは表示だけをする関数になったので、voidへ変更しました

2017/02/15 02:16

投稿

mingos
mingos

スコア4312

answer CHANGED
@@ -23,7 +23,7 @@
23
23
  }
24
24
 
25
25
  //成るかならないかを決めてもらう関数
26
- public int checkactofkoma_subfunc_promote(MainActivity mainActivity)
26
+ public void checkactofkoma_subfunc_promote(MainActivity mainActivity)
27
27
  {
28
28
  Log.d("promote check","promote check");
29
29
  //display

1

ダイアログの表示についての回答は関係なかったので、処理の流れに関する回答へ修正します

2017/02/15 02:16

投稿

mingos
mingos

スコア4312

answer CHANGED
@@ -1,14 +1,43 @@
1
+ さきほどの回答はダイアログ表示とは関係ないので、処理の流れについての回答に変更させて頂きます。
1
- 1つ気になったのは、create()を呼び出していい点
2
+ ダイアログ表示非同期、いつ表示されるかは分かりません
2
- とりあえずこちらてもらって良いでしょうか?
3
+ なのでダイアログの「はい」「いいえ」の各ボタンが押された時にそれぞれ対応するメソッド呼ぶ形にたほうが良いと思います。
3
4
 
4
5
  ```java
5
- ...
6
+ public int promote_user_ans = 0;
6
- public void checkactofkoma_subfunc_promote_display(MainActivity mainActivity)
7
+ public void checkactofkoma_subfunc_promote_display(MainActivity mainActivity)
7
8
  {
8
9
  AlertDialog.Builder builder = new AlertDialog.Builder(mainActivity);
10
+ builder.setMessage("成りますか")
11
+ .setPositiveButton("はい", new DialogInterface.OnClickListener() {
12
+ public void onClick(DialogInterface dialog, int id) {
13
+ onPromote();
14
+ }
15
+ })
16
+ .setNegativeButton("いいえ", new DialogInterface.OnClickListener() {
17
+ public void onClick(DialogInterface dialog, int id) {
18
+ onCancelPromote();
19
+ }
9
- ...
20
+ });
10
- // builder.show();
11
- builder.create().show();
21
+ builder.show();
22
+ //ここで表示されてない
12
23
  }
24
+
25
+ //成るかならないかを決めてもらう関数
26
+ public int checkactofkoma_subfunc_promote(MainActivity mainActivity)
13
- ...
27
+ {
28
+ Log.d("promote check","promote check");
29
+ //display
30
+ checkactofkoma_subfunc_promote_display(mainActivity);
31
+ }
32
+
33
+ void onPromote() {
34
+ Log.d("promote check","yes");
35
+ promote_user_ans = 1;
36
+ }
37
+
38
+ void onCancelPromote() {
39
+ Log.d("promote check","no");
40
+ promote_user_ans = -1;
41
+ }
42
+
14
43
  ```