2

設定バンドルには非常に単純な設定があります。これは、トグル スイッチで設定された TRUE または FALSE の値です。それに基づいて、私のアプリはボタンを表示する必要があります。十分に単純です。

しかし、値を読み取ると、null が返されます。設定アプリで確認できるので、適切に設定されていることがわかります。

これが私が値を読む方法です

myButton.hidden = ![[NSUserDefaults standardUserDefaults] boolForKey:@"my key"];

その行をviewDidLoad、applicationDidFinishLaunchingに入れましたが、何もありません! 私はヌルになり続けます。

あなたの助けに感謝します。

4

1 に答える 1

0

ユーザーが設定に触れておらず、設定値に(コードで)デフォルト値を指定していない場合、それらはnullとして返されることに注意してください...「実際の」デフォルトを設定したい場合(したがって、それらを呼び出すときに何らかの値を取得します) のような設定を行う必要があります (それらがまだ設定されていないことを確認する必要があります)。

NSMutableDictionary *d=[[NSMutableDictionary alloc] init];
    //set the values for d
    NSDictionary *dict = [NSDictionary dictionaryWithDictionary:d];
    [[NSUserDefaults standardUserDefaults] registerDefaults:dict];
    [d release];

それが役に立てば幸い

于 2012-11-05T17:30:13.227 に答える