मुझे रेडियो ग्रुप के स्पष्ट चेक() के साथ कोई समस्या है। मैं उपयोगकर्ता को एक से अधिक विकल्प प्रश्न प्रदर्शित कर रहा हूं और उपयोगकर्ता उत्तर का चयन करने के बाद मैं जवाब की जांच करता हूं, उसे कुछ प्रतिक्रिया देता हूं और फिर अगले प्रश्न पर जाता हूं। अगले प्रश्न पर जाने की प्रक्रिया में मैं रेडियो ग्रुप पर स्पष्ट जांच करता हूं।रेडियो समूह के लिए एंड्रॉइड के स्पष्ट चेक() में त्रुटि?
क्या कोई मुझे बता सकता है कि ऑन चेक किए गए चेंज विधि को 3 बार क्यों कहा जाता है? एक बार जब परिवर्तन वास्तव में होता है (उपयोगकर्ता परिवर्तन के साथ), एक बार जब मैं साफ़ करता हूं (चयनित आईडी के रूप में -1 के साथ) और एक बार बीच में (उपयोगकर्ता के साथ फिर से बदलता है)?
जहां तक मैं दूसरा ट्रिगर बता सकता हूं स्पष्ट चेक द्वारा उकसाया जाता है। नीचे दिए गए कोड:
private void checkAnswer(RadioGroup group, int checkedId){
// this makes sure it doesn't blow up when the check is cleared
// also we don't check the answer when there is no answer
if (checkedId == -1) return;
if (group.getCheckedRadioButtonId() == -1) return;
// check if correct answer
if (checkedId == validAnswerId){
score++;
this.giveFeedBack(feedBackType.GOOD);
} else {
this.giveFeedBack(feedBackType.BAD);
}
// allow for user to see feedback and move to next question
h.postDelayed(this, 800);
}
private void changeToQuestion(int questionNumber){
if (questionNumber >= this.questionSet.size()){
// means we are past the question set
// we're going to the score activity
this.goToScoreActivity();
return;
}
//clearing the check
gr.clearCheck();
// give change the feedback back to question
imgFeedback.setImageResource(R.drawable.question_mark); //OTHER CODE HERE
}
और रन विधि इस
public void run() {
questionNumber++;
changeToQuestion(questionNumber);
}
@qbeticus धन्यवाद तुम, मैं माने एक बूलियन वैरिएबल का उपयोग करने के अंत में जीड यह पता लगाने के लिए कि ऑन चेक किए गए चेंज को चेक किए गए विकल्प का मूल्यांकन करना जारी रखना चाहिए या नहीं। –
यह पुष्टि करने के लिए धन्यवाद कि यह एक बग है, मैं रेडियोग्रुप के अजीब व्यवहार को देखने के बाद इसे संदेह कर रहा था। –