#android
Вопрос:
Я использовал API для создания флажка формы для нескольких вопросов, но я не смог проверить данные для созданного флажка. Кто-нибудь может мне помочь
JSONArray checkBoxJSONOpt = eachData.getJSONArray("lstRegisterOptions");
for (int j = 0; j < checkBoxJSONOpt.length(); j ) {
CheckBox chk = new CheckBox(SurveyDetailsActivity.this);
chk.setBackgroundColor(Color.parseColor("#FFFFFF"));
allViewInstance.add(chk);
chk.setTag(checkBoxJSONOpt.getJSONObject(j).getString("QOption"));
chk.setTextSize(TypedValue.COMPLEX_UNIT_SP, 18);
chk.setTextColor(ContextCompat.getColor(SurveyDetailsActivity.this, R.color.textchoice));
chk.setPadding(0, 0, 0, 0);
chk.setId(checkBoxJSONOpt.length());
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
params.topMargin = 3;
params.bottomMargin = 3;
String optionString = checkBoxJSONOpt.getJSONObject(j).getString("QOption");
chk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
chk.setError(null);
String variant_name = v.getTag().toString();
}
});
chk.setText(optionString);
viewProductLayout.addView(chk, params);
}
dataModelArrayList.add("false");
}
Я использовал приведенный выше код для создания флажка для нескольких вопросов, и мой ответ таков
{
"lstRegisterOptions": [
{
"RId": 0,
"RegisterOptionId": 21210,
"RegisterFieldId": 20446,
"QOption": "కేసీఆర్ ఈటెలకు అన్యాయం చేశాడు",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21211,
"RegisterFieldId": 20446,
"QOption": "ఈటెల కేసీఆర్ కి అన్యాయం చేశాడు",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21212,
"RegisterFieldId": 20446,
"QOption": "ఇద్దరు కలిసి ప్రజలకు అన్యాయం చేస్తున్నారు",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21213,
"RegisterFieldId": 20446,
"QOption": "తెలియదు",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
}
],
"RId": 0,
"RegisterFieldId": 20446,
"FormId": 20145,
"FormName": null,
"Name": "ఎవరు ఎవరికి అన్యాయం చేశారు అని మీరు భావిస్తున్నారు.?",
"HelpText": "",
"QuestionType": "checkbox",
"DisplayOrder": 8,
"IsRequired": true,
"ValidationType": "",
"Options": null,
"UpdatedBy": "admin",
"UpdatedDate": "0001-01-01T00:00:00",
"Answers": null,
"LabelName": "ఎవరు ఎవరికి అన్యాయం చేశారు అని మీరు భావిస్తున్నారు.?",
"IsInResult": "No",
"Field1": "",
"Field2": "",
"Field3": ""
},
{
"lstRegisterOptions": [
{
"RId": 0,
"RegisterOptionId": 21233,
"RegisterFieldId": 20449,
"QOption": "కళ్యాణలక్ష్మి ",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21234,
"RegisterFieldId": 20449,
"QOption": "షాదీ ముబారక్ ",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21235,
"RegisterFieldId": 20449,
"QOption": "కె.సి.ఆర్. కిట్ ",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21236,
"RegisterFieldId": 20449,
"QOption": "ఆసరా ఫింఛను ",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21237,
"RegisterFieldId": 20449,
"QOption": "tరుణ మాఫీ పథకం",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21238,
"RegisterFieldId": 20449,
"QOption": "రైతుబంధు పథకం",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21239,
"RegisterFieldId": 20449,
"QOption": "రైతు భీమా",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21240,
"RegisterFieldId": 20449,
"QOption": "గొర్రెల పంపిణీ పథకం",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
},
{
"RId": 0,
"RegisterOptionId": 21241,
"RegisterFieldId": 20449,
"QOption": "దళితబంధు పథకం",
"UpdatedBy": null,
"UpdatedDate": "0001-01-01T00:00:00"
}
],
"RId": 0,
"RegisterFieldId": 20449,
"FormId": 20145,
"FormName": null,
"Name": "తెరాస ప్రభుత్వం ద్వారా మీరు లబ్దిదరుడా?",
"HelpText": "",
"QuestionType": "checkbox",
"DisplayOrder": 9,
"IsRequired": true,
"ValidationType": "",
"Options": null,
"UpdatedBy": "admin",
"UpdatedDate": "0001-01-01T00:00:00",
"Answers": null,
"LabelName": "తెరాస ప్రభుత్వం ద్వారా మీరు లబ్దిదరుడా?",
"IsInResult": "No",
"Field1": "",
"Field2": "",
"Field3": ""
}
это мой приведенный выше ответ, который я получал от api, мне нужна помощь, чтобы динамически создать флажок для указанного выше ответа и проверить его
Комментарии:
1. Я не уверен, какова ваша цель. Но если вы хотите прослушать изменения состояния флажка, вам нужно использовать setOnCheckedChangeListener, а не setOnClickListener.
2. у меня есть 2 вопроса о флажке, в котором для 1 вопроса у него 4 флажка, а во 2-м вопросе у него 7 флажков, поэтому, когда я пытался проверить, что он не работает, он проверял только 1-й 2 флажок 1-го вопроса, он не переходит на 2-й вопрос
3. Добавлены ли флажки в пользовательский интерфейс ?
4. да, они добавлены
5. Что-то странное выглядит в вашем JSON. Убедитесь, что он соответствует ожидаемому формату.