В моем классе есть два метода, с помощью которых я надеюсь вернуть строку текста, прикрепленную к каждому переключателю:
public String toppingGroupCheck(RadioGroup toppingGroup, int checkedId){
switch (checkedId){
case R.id.toppingRadio1:
checkedId = toppingGroup.getCheckedRadioButtonId();
selectedToppingRad = (RadioButton)findViewById(checkedId);
selectedTopping = selectedToppingRad.getText().toString();
case R.id.toppingRadio2:
checkedId = toppingGroup.getCheckedRadioButtonId();
selectedToppingRad = (RadioButton)findViewById(checkedId);
selectedTopping = selectedToppingRad.getText().toString();
case R.id.toppingRadio3:
checkedId = toppingGroup.getCheckedRadioButtonId();
selectedToppingRad = (RadioButton)findViewById(checkedId);
selectedTopping = selectedToppingRad.getText().toString();
case R.id.toppingRadio4:
checkedId = toppingGroup.getCheckedRadioButtonId();
selectedToppingRad = (RadioButton)findViewById(checkedId);
selectedTopping = selectedToppingRad.getText().toString();
case R.id.toppingRadio5:
checkedId = toppingGroup.getCheckedRadioButtonId();
selectedToppingRad = (RadioButton)findViewById(checkedId);
selectedTopping = selectedToppingRad.getText().toString();
}
return selectedTopping;
}
public String sideGroupCheck(RadioGroup sidesGroup, int checkedId){
switch (checkedId){
case R.id.sideRadio1:
checkedId = sidesGroup.getCheckedRadioButtonId();
selectedSideRad = (RadioButton)findViewById(checkedId);
selectedSide = selectedSideRad.getText().toString();
case R.id.sideRadio2:
checkedId = sidesGroup.getCheckedRadioButtonId();
selectedSideRad = (RadioButton)findViewById(checkedId);
selectedSide = selectedSideRad.getText().toString();
case R.id.sideRadio3:
checkedId = sidesGroup.getCheckedRadioButtonId();
selectedSideRad = (RadioButton)findViewById(checkedId);
selectedSide = selectedSideRad.getText().toString();
}
return selectedSide;
}
Затем у меня есть это, которое должно использовать эти методы и возвращать строку в переменные tmpTopping и tmpSide:
public void submitForm(View view){
Intent submitform = new Intent(this, submitForm.class);
String tmpTopping = toppingGroupCheck(toppingGroup, checkedId);
submitform.putExtra("topping",tmpTopping);
String tmpSide = sideGroupCheck(sidesGroup, checkedId);
submitform.putExtra("side",tmpSide);
startActivity(submitform);
}
Может ли кто-нибудь объяснить, что я, возможно, делаю неправильно, или лучший способ сделать это? Спасибо.
ОБНОВЛЕНИЕ: я пытался сделать:
checkedId = toppingGroup.getCheckedRadioButtonId();
selectedToppingRad = (RadioButton)findViewById(checkedId);
String topping = selectedToppingRad.getText();
но он продолжал говорить, что "selectedToppingRad.getText()" будет возвращать последовательность символов вместо строки. Вместо этого я просто вставил «selectedToppingRad.getText()» прямо в putExtra, и это сработало.