アクティビティを再作成するためのコードを次に示します。
static final String STATE_SCORE = "playerScore";
static final String STATE_LEVEL = "playerLevel";
...
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
// Save the user's current game state
savedInstanceState.putInt(STATE_SCORE, mCurrentScore);
savedInstanceState.putInt(STATE_LEVEL, mCurrentLevel);
// Always call the superclass so it can save the view hierarchy state
super.onSaveInstanceState(savedInstanceState);
}
ここで、bundle の putInt() メソッドの定義に疑問があります。その定義を探したところ、次のドキュメントを入手しました-
public void putInt (String key, int value)
API レベル 1 で追加
このバンドルのマッピングに int 値を挿入し、指定されたキーの既存の値を置き換えます。パラメータ
key: String、または null
value: int、または null
String キーで何が行われているのかわかりません。というか、そういうことですか。バンドルに問題を追加するためのポインターとしてキーが使用されるたびに?また、STATE_SCORE を「playerscore」として定義する必要はありますか?