@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_quiz);
Dbb db=new Dbb(this);
quesll=db.getAllQuestions();
currentQ=quesList.get(qid);
txtresult=(TextView)findViewById(R.id.textView2);
txtQuestion=(TextView)findViewById(R.id.textView1);
radiobuttona=(RadioButton)findViewById(R.id.radio0);
radiobuttonb=(RadioButton)findViewById(R.id.radio1);
buttonnext=(Button)findViewById(R.id.button1);
buttonnext.setEnabled(false);
setQuestionView();
buttonnext.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
RadioGroup group = (RadioGroup) findViewById(radioGroup);
RadioButton answer = (RadioButton) findViewById(grp.getCheckedRadioButtonId());
if (group .isSelected()){
butNext.setEnabled(true);
}
当选择单选组时,为什么按钮未设置为启用?
最佳答案
这段代码可以工作!!
public class Sample extends Activity {
private RadioGroup radioGroup;
private RadioButton radioButtonmale, radioButtonfemale;
private Button btnDisplay;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_stackover);
addListenerOnButton();
}
public void addListenerOnButton() {
radioGroup = (RadioGroup) findViewById(R.id.radioSex);
btnDisplay = (Button) findViewById(R.id.btnDisplay);
btnDisplay.setEnabled(false);
radioButtonmale = (RadioButton) findViewById(R.id.radioMale);
radioButtonfemale = (RadioButton) findViewById(R.id.radioFemale);
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
int id = radioGroup.getCheckedRadioButtonId();
View radioButton = radioGroup.findViewById(id);
if (radioButton.getId() == R.id.radioMale) {
btnDisplay.setEnabled(true);
} else {
btnDisplay.setEnabled(true);
}
}
});
}
}
关于java - 选择单选按钮组时按钮未启用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40389731/