繁体   English   中英

如何从不同的活动中获取 RadioGroup 值

[英]How to get RadioGroup value from different Activity

我正在使用 Android Studio 创建一个健身应用程序。 在这个应用程序中,我有多个活动 (6)。 在我的 SixthActivity 中,我希望能够从 ThirdActivity 的单选组中获取选定的单选按钮。 但是,当我这样做时,该值为空 (""),而不是用户在 ThirdActivity 中选择的选项。

我曾尝试使用体验单选按钮,但它也不起作用。

//Third Activity.java 

thirdRadioGroup = findViewById(R.id.thirdRadioGroup);

    int radioIdExperience = thirdRadioGroup.getCheckedRadioButtonId();
    //experience = (RadioButton) findViewById(radioIdExperience);


    Intent intent = new Intent(this, SixthActivity.class);
    intent.putExtra("Experience", radioIdExperience);
    //startActivity(intent);



//SixthActivity.java


    Intent intent=getIntent();
    String experience =intent.getStringExtra("Experience");



         sixthTextView.setText(experience);

我希望根据用户在 ThirdActivity radioGroup 中所做的选择填充 SixthActivity 中的文本视图。 例如 RadioGroup 中的三个选择是:

0 -6 个月 6 - 12 个月 1 + 年

根据用户在 ThirdActivity 中选择的任何选项,我希望它显示在 SixthActivity 的 textview 中。

问题 :

根据你的代码。 您正在向 SixthActivity 发送一个整数值并保存在字符串变量中

第三活动

int radioIdExperience =thirdRadioGroup.getCheckedRadioButtonId();

第六活动

String Experience =intent.getStringExtra("Experience");

解决方案:确保您发送的是正确的值,并在发送前先在 THirdActivity 上检查。 然后检查 SixthActivity 上发送的值

希望这会有所帮助...

您可以创建一个静态公共类作为数据成员的整数数组,并在每个后续 startActivity() 之后继续填充该数组。 最后在您的第六个活动中访问该数组

改变:

String experience = intent.getStringExtra("Experience");

到:

String experience = String.valueOf(intent.getIntExtra("Experience"));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM