0

私の設定にアクセスするこの小さなコードスニペットがあり、チェックボックスが「true」のときにスプラッシュミュージックが再生されます。そうでなければ、そうではありません。私がフォローしているチュートリアルはこのコードで機能しますが、私のものは機能しません。私のコードに問題がある人はいますか?

アプリを実行すると、関係なく音楽が再生されますが、エラーは発生しません。

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);

    setContentView(R.layout.splash);

    ourSong = MediaPlayer.create(Splash.this, R.raw.clip1);

    SharedPreferences getPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    boolean musicCheck = getPrefs.getBoolean("checkbox",true);
    if (musicCheck == true){
        ourSong.start();
    }

プリファレンス XML:

<EditTextPreference
    android:title="EditText"
    android:key="name"
    android:summary="Enter your name"/>

<CheckBoxPreference
    android:title="Music"
    android:defaultValue="True"
    android:key="Checkbox"
    android:summary="For the Splash Screen"/>

<ListPreference
    android:title="List"
    android:key="list"
    android:summary="This is a list"
    android:entries="@array/list"
    android:entryValues="@array/lvalues"
    ></ListPreference>

4

1 に答える 1

1

boolean musicCheck = getPrefs.getBoolean("checkbox",true);に変更

boolean musicCheck = getPrefs.getBoolean("Checkbox",true);

取得する設定の名前は、設定のキーと一致する必要があると思います。

于 2013-03-05T19:32:02.680 に答える