我有一个Button,问题和使用for循环动态创建的多个复选框,看起来像
这就是我获取所有数据的方式以及我如何创建问题以及checkBoxes
try {
JSONArray jsonArray = response.getJSONArray("values");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject category = jsonArray.getJSONObject(i);
categoryTxt = category.getString("category");
Log.v("category", categoryTxt);
//create Question
TextView title = new TextView(FactorsActivity.this);
title.setTextSize(20);
title.setId(i);
title.setText(categoryTxt);
title.setTextColor(Color.BLUE);
mLinearLayout.addView(title);
JSONArray factors = category.getJSONArray("factors");
Log.v("size factors", String.valueOf(factors.length()));
nameArray = new String[factors.length()];
for(int j = 0; j < factors.length(); j++)
{
JSONObject factorsObj = factors.getJSONObject(j);
id = factorsObj.getString("id");
//Log.v("id", id);
name = factorsObj.getString("name");
// Log.v("name", name);
nameArray[j] = name;
checkBox = new CheckBox(FactorsActivity.this);
checkBox.setId(Integer.parseInt(id));
checkBox.setText(nameArray[j]);
mLinearLayout.addView(checkBox);
}
}
现在我的主要目标是,如果我选中是每日框,我点击提交。当我点击提交时,我希望获得所有选中的复选框信息,例如问题,其ID和文本。这里的信息应该是
答案 0 :(得分:0)
就像使用name
一样,在数组中存储对动态创建的CheckBox
项的引用,如下所示:
checkboxArray[j] = checkBox;
然后遍历此数组以获取CheckBox
ID及其文本。