1

コード スニペット:

if (mGamePrefs.contains(GAME_PREF_NAME)) 
{
    theName = mGamePrefs.getString(GAME_PREF_NAME, "Jane Doe");
}

しかし、以前のストレージなしで設定を取得すると、デフォルト値はありません。私はこのコードで検索を行います:

PreferenceLastGame gameSettings = new PreferenceLastGame(this);

String gameName  = gameSettings.getTheName();

デフォルト値を取得するには、このコードを実行する必要があります

if(gameName == null) gameName = "Jane Doe";

それ以外はすべて揃っており、問題なく動作しています。なぜこれが失敗するのですか?

GAME_PREF_NAME は次のように定義されます。

public class MeMoInfoActivity extends FragmentActivity 
{
public static final String GAME_PREFERENCES = "GamePrefs";
public static final String GAME_PREF_NAME  = "TheName";         // key string
    ........

PreferenceLastGame は、設定の処理に関するコードを配置する単なるクラスです。

4

1 に答える 1