Несколько RadioGroup onCheckedChanged - PullRequest
0 голосов
/ 23 октября 2018

Я впервые выступаю на радио.Я пытаюсь сохранить значения из 3 групп в общие префы.Он отлично работает с одной группой, но как только я попытаюсь добавить еще 2, все значения pref будут только последней группой в форме.Я не уверен, что делать, чтобы использовать несколько радиогрупп.Любая помощь будет оценена.

onCreate

RadioGroup radioGroupGender = (RadioGroup) findViewById(R.id.gender_radio);
radioGroupGender.setOnCheckedChangeListener(this);

RadioGroup radioGroupActivity = (RadioGroup) findViewById(R.id.activity_level);
radioGroupActivity.setOnCheckedChangeListener(this);

RadioGroup radioGroupStatus = (RadioGroup) findViewById(R.id.current_status);
radioGroupStatus.setOnCheckedChangeListener(this);

И мой onCheckedChanged

public void onCheckedChanged(RadioGroup radioGroup, int i) {
        int genderId = radioGroup.getCheckedRadioButtonId();
        RadioButton genderBut = (RadioButton)radioGroup.findViewById(genderId);
        gender_radio = genderBut.getText().toString();

        int activityLvl = radioGroup.getCheckedRadioButtonId();
        RadioButton activityLvlBut = (RadioButton)radioGroup.findViewById(activityLvl);
        activity_level = activityLvlBut.getText().toString();

        int currentStat = radioGroup.getCheckedRadioButtonId();
        RadioButton CurrentBut = (RadioButton)radioGroup.findViewById(currentStat);
        current_status = CurrentBut.getText().toString();
    }

1 Ответ

0 голосов
/ 23 октября 2018

Вы используете те же gender_radio activity_level current_status, они перезаписываются при каждом onCheckedChanged() вызове, только значения последнего вызова onCheckedChanged() будут сохранены

...