2017-07-27 5 views
0

アンドロイドのラジオボタンをシャッフルしようとしていますが、これまでのコードはここにありますが、さらに進んでいくうちに、コードをどうやってやるべきかを知ることができません。アンドロイドのラジオボタンのシャッフル

私が間違っている場合は修正してください。また、私が新しいので間違いをしてください。

ArrayList<RadioButton> arrayText = new ArrayList<>(); 

arrayText.add(ropt0); 
arrayText.add(ropt1); 
arrayText.add(ropt2); 
arrayText.add(ranswer); 

Collections.shuffle(arrayText); 

私は次のCollections.shuffle(arrayText); 後コード

どうあるべきかを得ていないのです、私はあなたが非常にあなたが何をしている理解していない、あなたは何をしたいと思います

答えて

0

を提案してください。あなたのコードではRadioButtonsArrayListに追加してからこのリストをシャッフルします。これは次のように同じです:

ArrayList<Stirng> list = new ArrayList<String>(); 
list.add("a1"); 
list.add("a2"); 

Collections.shuffle(list); 

これはUIには何も関係していません。

  1. ラジオボタンを作成してコードに追加します(UIでボタンをシャッフルする場合)。ビューのXMLファイル内のいくつかのRadioGroupを定義して、あなたのRadioButton

    RadioGroup lay = (RadioGroup) findViewById(R.id.my_radio_group); 
    List<RadioButton> buttons = new ArrayList<>(); 
    RadioButton rb1 = new RadioButton(this); 
    RadioButton rb2 = new RadioButton(this); 
    buttons.add(rb1); 
    buttons.add(rb2); 
    Collections.shuffle(buttons); 
    for(RadioButton rb: 
        buttons){ 
        lay.addView(rb,new RadioGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)); 
    } 
    
  2. を作成し、追加ちょうど右のボタン位置をシャッフル。 NボタンをXMLで作成します。そして、コード内のすべてのテキストを設定して、どちらのボタンが正しいかを判断することができます。

    List<String> answers = new ArrayList<>(4); // 4 - button number 
    //Fill the list here 
    int rightAnswerPosition = ...; //Decide it when you fill your list 
    rb1.setText(answers.get(0)); 
    //.. and so on 
    
関連する問題