我为Android应用创建了基础,向用户询问了一系列问题;与糖尿病症状相关,并根据用户的答案产生糖尿病状态。然而,我在创建点系统以产生糖尿病状态方面遇到了麻烦。
该应用程序询问11个问题(关于不同的活动),只有7个问题与糖尿病症状相关。每个问题的答案都在RadioGroup中,我设法制作了一个toast来显示已选择的内容(我自己的测试用途)。我想给每个RadioButton(答案)一个数字值,以便例如如果用户得分高于10则他们是糖尿病患者。任何人都可以帮忙??
RadioGroup示例代码在其中一个活动的.java文件中:
final RadioGroup radioDQ1Group = (RadioGroup) findViewById(R.id.radioDQ1Group1);
Button btnNext = (Button) findViewById(R.id.btnNext1);
btnNext.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(Diabetes_Question_1.this, Diabetes_Question_3.class));
// get selected radio button from radioGroup
int selectedId = radioDQ1Group.getCheckedRadioButtonId();
// find the radio button by returned id
RadioButton radioDQ1Button = (RadioButton) findViewById(selectedId);
Toast.makeText(Diabetes_Question_1.this, radioDQ1Button.getText(), Toast.LENGTH_SHORT).show();
}
});
我希望将每个活动的分数发送到下一个活动或在应用程序内全局保存,以便在按下“计算”按钮后,应用程序将总计分数并向用户显示另一个活动,说明其潜在的糖尿病状态。任何人都可以尽快帮助,因为我的截止日期很紧?任何帮助将不胜感激!!
答案 0 :(得分:1)
一种选择是将分数保存在SharedPreferences变量中。当您计算时,您可以从中读取。
http://developer.android.com/reference/android/content/SharedPreferences.html
选项2:
我想在每个活动中,你在点击一个按钮时调用nextActivity,所以在startNextActivity的意图中,你可以传递得分。