由于getBooleanExtra
方法具有两个值-true
和false
,如何使用getBooleanExtra编写代码以显示两个不同的字符串值?
例如,按RadioButton1
应该显示getBooleanExtra 1
中的字符串,按RadioButton2
应该显示字符串2
。
我写了这样的东西,但没有做。
textViewDisplayResult.setText(getIntent().getBooleanExtra("KEY_ANSWER", false)?getString(R.string.1):getString(R.2));
发布更新
那么在以下情况下如何使用
activity
将值传递给其他Bundle
? final Intent intent = new Intent(MainActivity.this, AnswerActivity.class);
buttonCheckAnswer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!allAnswersChecked())
intent.putExtra("KEY_ALL_CHECKED", R.string.text_not_checked);
else if (checkAnswers())
intent.putExtra("KEY_ANSWER", R.string.Good_answer);
else
intent.putExtra("KEY_ANSWER", R.string.Wrong_answer);
startActivity(intent);
}
});
最佳答案
“由于getBooleanExtra方法具有两个参数-true
和false
” ...这是错误的。 getBooleanExtra()
有两个参数:一个是您传递的布尔值的键,另一个是default
值。因此,您不能使用单个putBooleanExtra()
传递两个值。
您可以使用Bundle
传递多个值。见this for mor info.