質問編集履歴

2

わかりやすくまとめました。

2017/05/17 00:22

投稿

edoooooo
edoooooo

スコア476

test CHANGED
@@ -1 +1 @@
1
- alert(ボタンのある)が開いた時にソフトウェアキーボードをonShow()で表示したいです。
1
+ すでに、create()した、AlertDalogでsetPositiveButtonのOnClickListener()を使いたいです。
test CHANGED
@@ -1,48 +1,26 @@
1
- //onShow()を呼び出ためのalertDialogと登録ボタンのあるbuilder.create()の2つを実行するには、
1
+ でに、createした、buildersをソフトウェアキーボードを表示するためのonShow()のListenerには、使えるのですが、
2
2
 
3
- alertDialog.show(); //1つめ
3
+ コードの一番下に書いた、setPositiveButtonには、cannot resolve methodとエラーがでます。
4
4
 
5
-
6
-
7
- builder.removeView(layout);
8
-
9
-
10
-
11
- builder.create().show(); //2つめ
12
-
13
- このように、最初に.showしたものを、
14
-
15
- removeView()ることで解決するのでしょうか?
5
+ どうればいいのでしょうか?
16
-
17
-
18
-
19
- そこで、builder.removeView(layout); //このremoveViewで何を指定すれば良いでしょうか?
20
-
21
-
22
-
23
-
24
-
25
- また、まとめてshow()することは可能ですか?
26
-
27
- buttonと、onShow()の2つのリスナーをshow()することはできないのでしょうか?
28
-
29
-
30
6
 
31
7
  ```java
32
8
 
33
9
 
34
10
 
35
- LayoutInflater inflater = (LayoutInflater) this.getSystemService(
11
+ LayoutInflater inflater = (LayoutInflater) this.getSystemService(
36
12
 
37
13
  LAYOUT_INFLATER_SERVICE);
38
14
 
39
15
  final View layout = inflater.inflate(R.layout.dialog_contact_us, (ViewGroup) findViewById(R.id.layout_root));
40
16
 
17
+
41
18
 
19
+ AlertDialog.Builder builders = new AlertDialog.Builder(this);
42
20
 
21
+
43
22
 
44
-
45
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
23
+ AlertDialog builder = builders.create();
46
24
 
47
25
  builder.setView(layout);
48
26
 
@@ -50,23 +28,11 @@
50
28
 
51
29
 
52
30
 
53
- builder.setView(layout);
54
-
55
- AlertDialog alertDialog = builder.create();
56
-
57
-
58
-
59
-
60
-
61
- alertDialog.setOnShowListener(new DialogInterface.OnShowListener() {
31
+ builder.setOnShowListener(new DialogInterface.OnShowListener() {
62
-
63
-
64
32
 
65
33
  @Override
66
34
 
67
35
  public void onShow(DialogInterface arg0) {
68
-
69
- //alertが作られたら、ソフトキーボードを表示する
70
36
 
71
37
  EditText getusername2 = (EditText) layout.findViewById(R.id.username);
72
38
 
@@ -76,9 +42,7 @@
76
42
 
77
43
  inputMethodManager.showSoftInput(getusername2, 0);
78
44
 
79
-
80
-
81
-
45
+
82
46
 
83
47
  }
84
48
 
@@ -86,41 +50,7 @@
86
50
 
87
51
 
88
52
 
89
-
90
-
91
- builder.setPositiveButton("登録ボタン", new DialogInterface.OnClickListener() {
53
+ builder.setPositiveButton("新規登録", new DialogInterface.OnClickListener() {
92
-
93
-
94
-
95
- public void onClick(DialogInterface dialog, int which) {
96
-
97
- }
98
-
99
- });
100
-
101
-
102
-
103
-
104
-
105
- //この際に2つのshow()を行おうとすると、2つめのところで、
106
-
107
- //java.lang.IllegalStateException:指定された子にはすでに親があります。子の親に対して最初にremoveView()を呼び出す必要があります。とエラーが出ます。
108
-
109
- alertDialog.show(); //1つめ
110
-
111
-
112
-
113
- //builder.setView(layout);
114
-
115
- builder.removeView(layout);
116
-
117
-
118
-
119
- builder.create().show(); //2つめ
120
-
121
- //onShow()を呼び出すためのalertDialogと、buttton登録ボタンのあるbuilder.create()の2つを実行するには、removeView()で解決するのでしょうか?
122
-
123
- //alertDialog.removeView(layout); この、removeViewには、can not method removeView 何でます。どうすればいいのでしょうか?
124
54
 
125
55
 
126
56
 

1

誤字

2017/05/17 00:22

投稿

edoooooo
edoooooo

スコア476

test CHANGED
File without changes
test CHANGED
@@ -1,16 +1,28 @@
1
- //onShow()を呼び出すためのalertDialogと、buttton登録ボタンのあるbuilder.create()の2つを実行するには、removeView()で解決するのでしょうか?
1
+ //onShow()を呼び出すためのalertDialogと、登録ボタンのあるbuilder.create()の2つを実行するには、
2
2
 
3
- alertDialog.show(); //1つめ
3
+ alertDialog.show(); //1つめ
4
-
5
- builder.removeView(layout); //このremoveViewで何を指定すれば良いでしょうか?
6
-
7
- builder.create().show(); //2つめ
8
4
 
9
5
 
10
6
 
11
- また、まとめてshow()することは可能ですか?
7
+ builder.removeView(layout);
12
8
 
13
9
 
10
+
11
+ builder.create().show(); //2つめ
12
+
13
+ このように、最初に.showしたものを、
14
+
15
+ removeView()することで解決するのでしょうか?
16
+
17
+
18
+
19
+ そこで、builder.removeView(layout); //このremoveViewで何を指定すれば良いでしょうか?
20
+
21
+
22
+
23
+
24
+
25
+ また、まとめてshow()することは可能ですか?
14
26
 
15
27
  buttonと、onShow()の2つのリスナーをshow()することはできないのでしょうか?
16
28