質問編集履歴
2
コード編集
    
        title	
    CHANGED
    
    | 
            File without changes
         | 
    
        body	
    CHANGED
    
    | @@ -17,8 +17,10 @@ | |
| 17 17 | 
             
            ###該当のソースコード
         | 
| 18 18 | 
             
            ```java
         | 
| 19 19 |  | 
| 20 | 
            +
             | 
| 20 21 | 
             
            import android.os.Bundle;
         | 
| 21 22 | 
             
            import android.support.v7.app.AppCompatActivity;
         | 
| 23 | 
            +
            import android.view.View;
         | 
| 22 24 | 
             
            import android.widget.RadioButton;
         | 
| 23 25 |  | 
| 24 26 | 
             
            import java.util.Arrays;
         | 
| @@ -32,8 +34,8 @@ | |
| 32 34 |  | 
| 33 35 | 
             
                String[][] ANSWRE = {
         | 
| 34 36 | 
             
                        {"Japan", "Japon", "Jpan"},
         | 
| 35 | 
            -
                        {" | 
| 37 | 
            +
                        {"book", "buuk", "buok"},
         | 
| 36 | 
            -
                        {" | 
| 38 | 
            +
                        {"desk", "desc", "desuk"},
         | 
| 37 39 | 
             
                };
         | 
| 38 40 |  | 
| 39 41 | 
             
                @Override
         | 
| @@ -44,11 +46,27 @@ | |
| 44 46 | 
             
                    //ラジオボタン
         | 
| 45 47 | 
             
                    RadioButton[][] radio = new RadioButton[ANSWRE.length][ANSWRE[0].length];
         | 
| 46 48 | 
             
                    //ラジオボタン設定
         | 
| 47 | 
            -
                    for(int n = 0; n < ANSWRE.length; n++){
         | 
| 49 | 
            +
                    for(int n = 0; n < ANSWRE.length; n++) {
         | 
| 48 | 
            -
                        for(int m = 0; m < ANSWRE[n].length; m++){
         | 
| 50 | 
            +
                        for (int m = 0; m < ANSWRE[n].length; m++) {
         | 
| 49 51 | 
             
                            radio[n][m] = new RadioButton(this);
         | 
| 50 52 | 
             
                            radio[n][m].setText(ANSWRE[n][m]);
         | 
| 51 53 | 
             
                            //idの設定とかもここで
         | 
| 54 | 
            +
                            radio[n][m].setId(m);
         | 
| 55 | 
            +
             | 
| 56 | 
            +
             | 
| 57 | 
            +
                            View.OnClickListener event = null;
         | 
| 58 | 
            +
                            radio[n][m].setOnClickListener(event);
         | 
| 59 | 
            +
                            event = new View.OnClickListener() {
         | 
| 60 | 
            +
                                @Override
         | 
| 61 | 
            +
                                public void onClick(View v) {
         | 
| 62 | 
            +
                                    if (v.getId() == 0) {
         | 
| 63 | 
            +
                                        //正解処理
         | 
| 64 | 
            +
                                    } else {
         | 
| 65 | 
            +
                                        //不正解処理
         | 
| 66 | 
            +
                                    }
         | 
| 67 | 
            +
                                    //次の問題へ
         | 
| 68 | 
            +
                                }
         | 
| 69 | 
            +
                            };
         | 
| 52 70 | 
             
                        }
         | 
| 53 71 | 
             
                    }
         | 
| 54 72 |  | 
| @@ -65,7 +83,6 @@ | |
| 65 83 | 
             
                        t.radio = list2.toArray(new RadioButton[]{});//元に戻す
         | 
| 66 84 | 
             
                    }
         | 
| 67 85 | 
             
                }
         | 
| 68 | 
            -
            }
         | 
| 69 86 |  | 
| 70 87 |  | 
| 71 88 | 
             
            ------------------------------------------------
         | 
1
コードの変更
    
        title	
    CHANGED
    
    | @@ -1,1 +1,1 @@ | |
| 1 | 
            -
            【Android java】クイズアプリ 多次元配列のシャッフルについて
         | 
| 1 | 
            +
            ja【Android java】クイズアプリ 多次元配列のシャッフルについて
         | 
    
        body	
    CHANGED
    
    | @@ -16,9 +16,11 @@ | |
| 16 16 | 
             
            また、回答の選択肢のラジオボタンを選択した段階で、次のクイズに進むやり方がわかりません。
         | 
| 17 17 | 
             
            ###該当のソースコード
         | 
| 18 18 | 
             
            ```java
         | 
| 19 | 
            +
             | 
| 19 20 | 
             
            import android.os.Bundle;
         | 
| 20 21 | 
             
            import android.support.v7.app.AppCompatActivity;
         | 
| 21 | 
            -
            import android.widget. | 
| 22 | 
            +
            import android.widget.RadioButton;
         | 
| 23 | 
            +
             | 
| 22 24 | 
             
            import java.util.Arrays;
         | 
| 23 25 | 
             
            import java.util.Collections;
         | 
| 24 26 | 
             
            import java.util.List;
         | 
| @@ -28,10 +30,10 @@ | |
| 28 30 | 
             
                //問題内容の定義
         | 
| 29 31 | 
             
                String[] QUESTION = {"日本", "本", "机"};
         | 
| 30 32 |  | 
| 31 | 
            -
                String[][] ANSWRE ={
         | 
| 33 | 
            +
                String[][] ANSWRE = {
         | 
| 32 | 
            -
                        {"Japan","Japon","Jpan"},
         | 
| 34 | 
            +
                        {"Japan", "Japon", "Jpan"},
         | 
| 33 | 
            -
                        {"buuk","book","buok"},
         | 
| 35 | 
            +
                        {"buuk", "book", "buok"},
         | 
| 34 | 
            -
                        {"desuk","desc","desk"},
         | 
| 36 | 
            +
                        {"desuk", "desc", "desk"},
         | 
| 35 37 | 
             
                };
         | 
| 36 38 |  | 
| 37 39 | 
             
                @Override
         | 
| @@ -39,12 +41,48 @@ | |
| 39 41 | 
             
                    super.onCreate(savedInstanceState);
         | 
| 40 42 | 
             
                    setContentView(R.layout.activity_main);
         | 
| 41 43 |  | 
| 42 | 
            -
                    List<String> list1 = Arrays.asList(QUESTION.clone());
         | 
| 43 | 
            -
                     | 
| 44 | 
            +
                    //ラジオボタン
         | 
| 44 | 
            -
                     | 
| 45 | 
            +
                    RadioButton[][] radio = new RadioButton[ANSWRE.length][ANSWRE[0].length];
         | 
| 46 | 
            +
                    //ラジオボタン設定
         | 
| 47 | 
            +
                    for(int n = 0; n < ANSWRE.length; n++){
         | 
| 48 | 
            +
                        for(int m = 0; m < ANSWRE[n].length; m++){
         | 
| 49 | 
            +
                            radio[n][m] = new RadioButton(this);
         | 
| 50 | 
            +
                            radio[n][m].setText(ANSWRE[n][m]);
         | 
| 51 | 
            +
                            //idの設定とかもここで
         | 
| 52 | 
            +
                        }
         | 
| 53 | 
            +
                    }
         | 
| 45 54 |  | 
| 55 | 
            +
                    //Toiクラス利用
         | 
| 56 | 
            +
                    Toi[] toi = new Toi[QUESTION.length];
         | 
| 57 | 
            +
                    for(int n = 0; n < toi.length; n++)
         | 
| 58 | 
            +
                        toi[n] = new Toi(QUESTION[n], radio[n]);
         | 
| 59 | 
            +
             | 
| 60 | 
            +
                    List<Toi> list1 = Arrays.asList(toi.clone());
         | 
| 61 | 
            +
                    Collections.shuffle(list1);//toiをシャッフルしたList型 list1
         | 
| 62 | 
            +
                    for(Toi t: list1){
         | 
| 63 | 
            +
                        List<RadioButton> list2 = Arrays.asList(t.radio.clone());
         | 
| 64 | 
            +
                        Collections.shuffle(list2);//シャッフル
         | 
| 65 | 
            +
                        t.radio = list2.toArray(new RadioButton[]{});//元に戻す
         | 
| 66 | 
            +
                    }
         | 
| 46 67 | 
             
                }
         | 
| 47 68 | 
             
            }
         | 
| 69 | 
            +
             | 
| 70 | 
            +
             | 
| 71 | 
            +
            ------------------------------------------------
         | 
| 72 | 
            +
             | 
| 73 | 
            +
            import android.widget.RadioButton;
         | 
| 74 | 
            +
             | 
| 75 | 
            +
            public class Toi {
         | 
| 76 | 
            +
             | 
| 77 | 
            +
                String que;
         | 
| 78 | 
            +
                RadioButton[] radio;
         | 
| 79 | 
            +
                Toi(String que, RadioButton[] radio){
         | 
| 80 | 
            +
                    this.que = que;
         | 
| 81 | 
            +
                    this.radio = radio;
         | 
| 82 | 
            +
                }
         | 
| 83 | 
            +
            }
         | 
| 84 | 
            +
             | 
| 85 | 
            +
             | 
| 48 86 | 
             
            ```
         | 
| 49 87 |  | 
| 50 88 |  | 
