У меня есть кнопка onClickListener, которая должна определять, какой радиатор был выбран, когда пользователь нажимает кнопку. В настоящее время Log.v вы видите ниже, в onClickListener не возвращаю бесполезные немного информации:getCheckedRadioButtonId() возвращает бесполезный int?
Это щелкает представить три раза с разным радио выбранной каждый раз:
04-27 19: 24: 42,417: V/подать (1564): 1094168584
04-27 19: 24: 45,048: V/подать (1564): 1094167752
04-27 19: 24: 47,348: V/подать (1564): 1094211304
Итак, мне нужно знать, какой radioButton действительно выбран - есть ли способ получить объект радиобуйта? Я хочу, чтобы получить его id # из XML, а также его текущий текст.
Вот соответствующий код:
public void buildQuestions(JSONObject question) throws JSONException {
radioGroup = (RadioGroup) questionBox.findViewById(R.id.responseRadioGroup);
Button chartsButton = (Button) questionBox.findViewById(R.id.chartsButton);
chartsButton.setTag(question);
Button submitButton = (Button) questionBox.findViewById(R.id.submitButton);
chartsButton.setOnClickListener(chartsListener);
submitButton.setOnClickListener(submitListener);
TagObj tagObj = new TagObj(question, radioGroup);
submitButton.setTag(tagObj);
}
public OnClickListener submitListener = new OnClickListener() {
public void onClick(View v) {
userFunctions = new UserFunctions();
if (userFunctions.isUserLoggedIn(activity)) {
TagObj tagObject = (TagObj) v.getTag();
RadioGroup radioGroup = tagObject.getRadioGroup();
JSONObject question = tagObject.getQuestion();
Log.v("submit", Integer.toString(radioGroup.getCheckedRadioButtonId()));
SubmitTask submitTask = new SubmitTask((Polling) activity, question);
submitTask.execute();
}
}
};
Мои переключатели программны - у них нет элементов счетчика XML. Есть ли способ сделать это еще? – Davek804
@ Davek804 Конечно. Когда вы создаете 'RadioButtons', установите для них различные идентификаторы с помощью' setId() '. Затем в инструкции switch из моего ответа используйте числа, которые вы назначаете как идентификаторы вместо 'R.id.radio_button1'. Я отредактировал свой ответ. – Luksprog
Отлично, все настроено! Благодарю. – Davek804