質問編集履歴

2

コード編集

2016/07/05 23:39

投稿

q0220_3694
q0220_3694

スコア11

test CHANGED
File without changes
test CHANGED
@@ -36,10 +36,14 @@
36
36
 
37
37
 
38
38
 
39
+
40
+
39
41
  import android.os.Bundle;
40
42
 
41
43
  import android.support.v7.app.AppCompatActivity;
42
44
 
45
+ import android.view.View;
46
+
43
47
  import android.widget.RadioButton;
44
48
 
45
49
 
@@ -66,9 +70,9 @@
66
70
 
67
71
  {"Japan", "Japon", "Jpan"},
68
72
 
69
- {"buuk", "book", "buok"},
73
+ {"book", "buuk", "buok"},
70
-
74
+
71
- {"desuk", "desc", "desk"},
75
+ {"desk", "desc", "desuk"},
72
76
 
73
77
  };
74
78
 
@@ -90,9 +94,9 @@
90
94
 
91
95
  //ラジオボタン設定
92
96
 
93
- for(int n = 0; n < ANSWRE.length; n++){
97
+ for(int n = 0; n < ANSWRE.length; n++) {
94
-
98
+
95
- for(int m = 0; m < ANSWRE[n].length; m++){
99
+ for (int m = 0; m < ANSWRE[n].length; m++) {
96
100
 
97
101
  radio[n][m] = new RadioButton(this);
98
102
 
@@ -100,6 +104,38 @@
100
104
 
101
105
  //idの設定とかもここで
102
106
 
107
+ radio[n][m].setId(m);
108
+
109
+
110
+
111
+
112
+
113
+ View.OnClickListener event = null;
114
+
115
+ radio[n][m].setOnClickListener(event);
116
+
117
+ event = new View.OnClickListener() {
118
+
119
+ @Override
120
+
121
+ public void onClick(View v) {
122
+
123
+ if (v.getId() == 0) {
124
+
125
+ //正解処理
126
+
127
+ } else {
128
+
129
+ //不正解処理
130
+
131
+ }
132
+
133
+ //次の問題へ
134
+
135
+ }
136
+
137
+ };
138
+
103
139
  }
104
140
 
105
141
  }
@@ -132,42 +168,40 @@
132
168
 
133
169
  }
134
170
 
171
+
172
+
173
+
174
+
175
+ ------------------------------------------------
176
+
177
+
178
+
179
+ import android.widget.RadioButton;
180
+
181
+
182
+
183
+ public class Toi {
184
+
185
+
186
+
187
+ String que;
188
+
189
+ RadioButton[] radio;
190
+
191
+ Toi(String que, RadioButton[] radio){
192
+
193
+ this.que = que;
194
+
195
+ this.radio = radio;
196
+
197
+ }
198
+
135
199
  }
136
200
 
137
201
 
138
202
 
139
203
 
140
204
 
141
- ------------------------------------------------
142
-
143
-
144
-
145
- import android.widget.RadioButton;
146
-
147
-
148
-
149
- public class Toi {
150
-
151
-
152
-
153
- String que;
154
-
155
- RadioButton[] radio;
156
-
157
- Toi(String que, RadioButton[] radio){
158
-
159
- this.que = que;
160
-
161
- this.radio = radio;
162
-
163
- }
164
-
165
- }
166
-
167
-
168
-
169
-
170
-
171
205
  ```
172
206
 
173
207
 

1

コードの変更

2016/07/05 23:38

投稿

q0220_3694
q0220_3694

スコア11

test CHANGED
@@ -1 +1 @@
1
- 【Android java】クイズアプリ 多次元配列のシャッフルについて
1
+ ja【Android java】クイズアプリ 多次元配列のシャッフルについて
test CHANGED
@@ -34,11 +34,15 @@
34
34
 
35
35
  ```java
36
36
 
37
+
38
+
37
39
  import android.os.Bundle;
38
40
 
39
41
  import android.support.v7.app.AppCompatActivity;
40
42
 
41
- import android.widget.TextView;
43
+ import android.widget.RadioButton;
44
+
45
+
42
46
 
43
47
  import java.util.Arrays;
44
48
 
@@ -58,13 +62,13 @@
58
62
 
59
63
 
60
64
 
61
- String[][] ANSWRE ={
65
+ String[][] ANSWRE = {
62
-
66
+
63
- {"Japan","Japon","Jpan"},
67
+ {"Japan", "Japon", "Jpan"},
64
-
68
+
65
- {"buuk","book","buok"},
69
+ {"buuk", "book", "buok"},
66
-
70
+
67
- {"desuk","desc","desk"},
71
+ {"desuk", "desc", "desk"},
68
72
 
69
73
  };
70
74
 
@@ -80,18 +84,90 @@
80
84
 
81
85
 
82
86
 
87
+ //ラジオボタン
88
+
89
+ RadioButton[][] radio = new RadioButton[ANSWRE.length][ANSWRE[0].length];
90
+
91
+ //ラジオボタン設定
92
+
93
+ for(int n = 0; n < ANSWRE.length; n++){
94
+
95
+ for(int m = 0; m < ANSWRE[n].length; m++){
96
+
97
+ radio[n][m] = new RadioButton(this);
98
+
99
+ radio[n][m].setText(ANSWRE[n][m]);
100
+
101
+ //idの設定とかもここで
102
+
103
+ }
104
+
105
+ }
106
+
107
+
108
+
109
+ //Toiクラス利用
110
+
111
+ Toi[] toi = new Toi[QUESTION.length];
112
+
113
+ for(int n = 0; n < toi.length; n++)
114
+
115
+ toi[n] = new Toi(QUESTION[n], radio[n]);
116
+
117
+
118
+
83
- List<String> list1 = Arrays.asList(QUESTION.clone());
119
+ List<Toi> list1 = Arrays.asList(toi.clone());
120
+
84
-
121
+ Collections.shuffle(list1);//toiをシャッフルしたList型 list1
122
+
123
+ for(Toi t: list1){
124
+
125
+ List<RadioButton> list2 = Arrays.asList(t.radio.clone());
126
+
85
- Collections.shuffle(list1);
127
+ Collections.shuffle(list2);//シャッフル
86
-
128
+
87
- ((TextView) findViewById(R.id.textView2)).setText(list1.get(0));
129
+ t.radio = list2.toArray(new RadioButton[]{});//元に戻す
130
+
88
-
131
+ }
89
-
90
132
 
91
133
  }
92
134
 
93
135
  }
94
136
 
137
+
138
+
139
+
140
+
141
+ ------------------------------------------------
142
+
143
+
144
+
145
+ import android.widget.RadioButton;
146
+
147
+
148
+
149
+ public class Toi {
150
+
151
+
152
+
153
+ String que;
154
+
155
+ RadioButton[] radio;
156
+
157
+ Toi(String que, RadioButton[] radio){
158
+
159
+ this.que = que;
160
+
161
+ this.radio = radio;
162
+
163
+ }
164
+
165
+ }
166
+
167
+
168
+
169
+
170
+
95
171
  ```
96
172
 
97
173