I radiogruppi non mostrano?
-
28-10-2019 - |
Domanda
Sto cercando di aggiungere dinamicamente i radibutton ai radiogruppi ma i pulsanti non vengono mai visualizzati. Il testo lo fa, però. Sono un principiante, quindi per favore indica tutto quello che ho fatto di sbagliato.
Usando APKV7 (2.1 credo).
package test.test2;
import android.app.Activity;
import android.os.Bundle;
import android.widget.*;
public class TipsActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
//create objects
ScrollView scrollv = new ScrollView(this);
LinearLayout linlay = new LinearLayout(this);
linlay.setOrientation(LinearLayout.VERTICAL);
scrollv.addView(linlay);
int currentQuestion = 0, questions = 3;
int [] answers = new int[4];
answers[0] = 3;
answers[1] = 3;
answers[2] = 4;
answers[3] = 6;
while (questions > currentQuestion) {
RadioGroup rg = new RadioGroup(this);
TextView tv = new TextView(this);
tv.setText("Question no. " + currentQuestion);
int currentAnswer = 0;
while (currentAnswer > answers[currentQuestion]) {
RadioButton rb = new RadioButton(this);
//rb.setText("Answer no. " + currentAnswer);
rg.addView(rb);
currentAnswer++;
}
linlay.addView(rg);
linlay.addView(tv);
currentQuestion++;
}
setContentView(scrollv);
}
}
(NonoughContext NonoughContext)
Soluzione
Penso che dovresti fare il tuo ciclo in questo modo:
while (currentAnswer < answers[currentQuestion]) {
RadioButton rb = new RadioButton(this);
//rb.setText("Answer no. " + currentAnswer);
rg.addView(rb);
currentAnswer++;
}
Il problema è che CurrentSwer è più piccolo di qualsiasi risposta ...
Altri suggerimenti
Sostituisci questo codice:
int currentAnswer = 0;
while (currentAnswer > answers[currentQuestion])
A questo:
int currentAnswer = 0;
while (currentAnswer < answers[currentQuestion])
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow