在活动之间发送字符串

时间:2015-01-27 16:35:40

标签: java android

我想向HighScore显示游戏得分最高的活动发送一个值。

我正在共享偏好设置中保存游戏活动的分数,我正在尝试将分数(字符串值)发送到活动HighScore

Intent i = new Intent(this, HighScoreActivity.class); 
i.putExtra("classicHighScore", highScore);

3 个答案:

答案 0 :(得分:1)

好像你在意图中发送你的字符串。 这意味着,在您的HighScore活动中,写下

String highScore = getIntent.getStringExtra("classicHighScore", "");

你去了, 字符串highScore现在有你的值,

你可以记录下来检查:

Log.d("HIGH SCORE VALUE ", highScore);

答案 1 :(得分:1)

您需要在第一个Activity中的SharedPreferences对象中保存数据,并在另一个Activity中读取它。

在第一个活动中使用SharedPreferences保存分数:

SharedPreferences preferences = getSharedPreferences("SharedScore", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("classicHighScore", highScore);
editor.commit();

在其他活动中读取SharedPreference的分数:

SharedPreferences preferences = getSharedPreferences("SharedScore", MODE_PRIVATE);
int score = preferences.getInt("classicHighScore", -1);

答案 2 :(得分:0)

如果要在活动之间发送字符串,则必须创建一个Bundle。

Intent i = new Intent(this, HighScoreActivity.class); 

Bundle bundle = new Bundle();
bundle.putString("classicHighScore", highScore);
i.putExtra(bundle);

在HighScoreActivity中读取de参数

Bundle arguments = getIntent().getExtras();
String classicHighScore = arguments.getString("classicHighScore");