問題タブ [nsuserdefaults]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
313 参照

iphone - UISegmentedControle の状態を NSUserdefaults に保存する方法

問題は、de selectedSegmentIndex が選択されていない場合です: "UISegmentedControlNoSegment" エイリアス "-1"。

他の状態 (0、1、2 など) は、整数として格納して取得できます

しかし、-1 は NSInteger ではありません。

また、NSUserdefaults から Integer を削除しようとしましたが、要求は「0」を返し、これは受け入れられません。

それで、別の簡単な方法はありますか?

0 投票する
1 に答える
478 参照

iphone-sdk-3.0 - NSUserDefaultsは、シミュレーターとデバイスで常に0を返します

iPhoneアプリに次のPListを含む設定バンドルがあります。

それから私のコードで私は持っています:

choiceOne常に0です。

私は何が間違っているのですか?

ありがとう

0 投票する
1 に答える
1258 参照

iphone - UIImagePickerControllerアプリがクラッシュします!

私のアプリでは、ユーザーは画像を選択し、UIImageViewの画像を新しい画像に変更し、NSKeyedArchiverを使用して画像をNSUserDefaultsに保存できます。ユーザーが画像を選択して- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)infoが呼び出されると、アプリはすぐにクラッシュします。XcodeはエラーSIGABRTを受け取ります。これが私のコードです-

そして、これが私のエラーです。

私のアプリの名前がiPimpYourMusicAppであることを笑わないでください-名前を付けるのがわからなかったので、冗談を言って名前を付けました... :)よろしくお願いします!

0 投票する
1 に答える
434 参照

iphone - ユーティリティ アプリで NSUserDefaults をどこでどのように設定してロードする必要がありますか?

いくつかの書籍の指示といくつかのフォーラムでの提案に従いましたが、ユーザー設定をしようとするとアプリがクラッシュするという問題があります。FlipscreenViewController の「完了」メソッドに次の行があります。

そして、私のmainViewControllerの次のメソッド:

誰かが私が間違っていることを理解するのを手伝ってくれるなら、それは大歓迎です。

チャック

0 投票する
3 に答える
806 参照

iphone - NSUserDefaults: 保存された番号は常に 0、iPhone

私は他の回答とドキュメントを見てきました。多分私は何かを見逃しているか、別の問題を抱えているかもしれません。アプリの終了時に数値を保存しようとしていますが、アプリが読み込まれたときに、この値が存在するかどうかを確認し、それに応じてアクションを実行したいと考えています。これは私が試したことです:

終了時に保存するには:

チェックする:

問題は、常に警告メッセージが表示されることです。保存された値はラベルに入れられないため、何らかの形で == 0 が常に true になります。理由:

常にゼロですか?アプリを閉じる前は、そのラベルの数値は約 0.5% です (変動します)。違いがある場合は、iPhone シミュレーターでテストしています。

どうもありがとう、

ストゥ

0 投票する
1 に答える
4028 参照

iphone - 同期後に[NSUserDefaultsstandardUserDefaults]から値を読み取ることができません

Application Delegate didFinishLaunchingメソッドでは、次のコードを使用して、ユーザーの新しい設定バンドルとして使用される新しいNSDictionaryを構築しています。

後で別のViewControllerで、NSUserDefaultsとして保存された同じディクショナリから値を読み戻そうとしています-少なくともそうなると思いましたが、目的のメンバーlastUpdateの有効なオブジェクトポインタがそこにありません:

.hファイル内:

メンバー関数の.mファイル内:

[NSUserDefaults standardUserDefaults]のコンテンツを印刷しても、次のようにしか表示されません。

これにより、メモリ内のどこかにstandardUserDefaultsディクショナリがないか、そのような構造として判別できないという結論に至ります。

編集:毎回、デバイスでアプリを再起動します。testValueのチェックはNilで、辞書を再度作成していますが、1回実行すると、電話で永続化されるはずです。

私はその間のどこかで何か間違ったことをしていますか?iPhoneの特定のアプリケーションの設定を永続的にロードして保存する方法をまだよく理解していないように感じます。

これに加えて私がしなければならないことはありますか?XCodeにsettings.bundleを統合するか、辞書を手動でDocumentsフォルダーに保存しますか?

誰かがここで私を助けてくれますか?どうもありがとう!

0 投票する
1 に答える
476 参照

iphone - 組み込み製品のアプリ内ストアから購入した製品の記録

iPhone アプリのいくつかの組み込み機能のアプリ内ストアを作成しています。Apple のドキュメントでは、これを保存するために Application Preferences を使用することを推奨していますが、このフォーラムの別の質問では、Application Preferences が (Apple によって) 推奨されている別のタスクに NSUserDefaults を使用することが提案されました。

アプリ内ストアでの購入の場合、NSUserDefaults を使用する方がはるかに良い方法であるかどうかを明確にすることはできますか?

ありがとう。

0 投票する
1 に答える
991 参照

iphone - iPhoneアプリでbool設定を確認する方法

Key = 'latestNews' タイプの PSToggleSwitchSpecifier と DefaultValue をチェックするブール値として Root.plist に設定しています。それを正しく理解していれば、コードに取り込んだときに= YESになるはずです。その値を確認し、int var を設定してそれを PHP スクリプトに渡そうとしています。何が起こっているのかというと、ブール値が nil または NO であり、int var = 0 であるということです。何が間違っていますか?

更新: 本当の問題は、設定値を取得できないことです。本の例と同様に、ブール値の設定を文字列に変更しました。したがって、私の設定には、TrueValue = "On" と FalseValue = "Off" と DefaultValue = "On" があります。上記のコードでこの設定を取得しようとしています。DefaultValue を指定すると = "On" にする必要がありますが、私の int は = 0 になってしまい、設定の読み取りにまったく失敗していることを示唆しています。

0 投票する
4 に答える
3184 参照

iphone - シミュレーターでの最初の実行時に NSUserDefaults が存在しない

Settings.bundle にいくつかの設定を保存しました。それらを で使用しようとしましたapplication:didFinishLaunchingWithOptionsが、シミュレーターでの最初の実行時に、キーでオブジェクトにアクセスすると常にnil(int の場合は 0) が返されます。設定画面に移動して終了すると、その後のすべての実行で正常に機能します。

どうしたの?Settings.bundle でデフォルト値を使用するポイントは、ユーザーが最初に入力しなくても使用できるようにするためではありませんか?

0 投票する
1 に答える
1347 参照

cocoa - テキスト フィールドを共有ユーザー デフォルト コントローラーにバインドすると、null 値が使用されない

値コントローラー キー、spacesPerTab のキーパスでバインドするようにテキスト フィールドを設定し、プレースホルダー値として 4 を設定します。しかし、それを実行すると、テキストフィールドには何も表示されません。

これはチェックボックスで機能します。