我有一个 LinearLayout,我在其中动态添加了一些 CheckBox,它们在第一次调用时添加得非常好,当我用不同的值调用相同的方法时,它们不会出现在 LinearLayout 中,旧值不会被新值替换价值观。
我检查了 LogCat 中的值,它们看起来很好,无论我传递什么都显示在 LogCat 中,但没有出现在 LinearLayout 中。
这是我添加视图的方法:
private void setOptions(int questionID2) {
ArrayList<String> options = pustakDB.getOptions(questionID2);
Log.e("optionsInAct", options.toString() + " size " + options.size());
OptionView = new LinearLayout(this);
OptionView.setOrientation(LinearLayout.VERTICAL);
RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
p.addRule(RelativeLayout.BELOW, img.getId());
p.addRule(RelativeLayout.RIGHT_OF, questionNumber.getId());
rel.addView(OptionView, p);
int i = 0;
while (i < options.size()) {
CheckBox c = new CheckBox(this);
c.setText(options.get(i));
c.setId(i);
OptionView.addView(c);
i++;
}
}
编辑:这里的“rel”是RelativeLayout。