0

チェックボックスがオンになっているかどうかを確認すると、次のコードで強制終了が発生します。

public class preference extends PreferenceActivity implements OnSharedPreferenceChangeListener {

    public static final String nwd = "nwd";
    private CheckBoxPreference nwd_pref;


    @Override
    public void onCreate(Bundle savedInstanceState) {
        ...
        nwd_pref = (CheckBoxPreference)getPreferenceScreen().findPreference(nwd);
        ...
    }

    @Override
    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
    ...
    if (nwd_pref.isChecked()){
       // do code
    }
    ...
    }
}

検索中にこの例を見つけましたが、同じように見えます。

ご協力いただきありがとうございます!

4

1 に答える 1

1

findPrefernece(..)は "キーまたは null で設定を返します。 " "nwd" はまだ設定されていないようです。

于 2011-05-27T16:30:32.490 に答える