-
Notifications
You must be signed in to change notification settings - Fork 336
7.1 NSUserDefaults, Settings Bundle
Preferences and Settings Programming Guide
NSUserDefaults Class Reference
Settings Application Schema Reference
NSUserDefaults はアプリケーション内にデータを永続化させるためのシンプルなインタフェースを提供しています。保存可能はインスタンスは NSData, NSString, NSNumber, NSDate, NSArray, NSDictionary です。
- (IBAction)pressSaveButton:(id)sender
{
NSMutableArray *array = [NSMutableArray array];
for (int i = 0; i < 10; i ++) {
NSString *string = [NSString stringWithFormat:@"%d", i];
[array addObject:string];
}
[[NSUserDefaults standardUserDefaults] setObject:array forKey:@"array"];
}
- (IBAction)pressReadButton:(id)sender
{
NSLog(@"%@", [[NSUserDefaults standardUserDefaults] objectForKey:@"array"]);
}
console
MixiUserDefaultsSample[96760:c07] (
0,
1,
2,
3,
4,
5,
6,
7,
8,
9
)
注意
NSUserDefaults で保存した場合アプリ内の plist ファイルで保存されます。このファイルは iExproler などのアプリケーションを使うと一般ユーザでも見ることが出来てしまいます。従ってパスワードや access token などの情報はこのファイルに保存しないようにしてください。
iPhone の setting app 内に開発中のアプリの設定項目を追加することが出来ます。
ファイル追加画面で Settings Bundle を選びます。
この状態でビルドすると、設定アプリの中に開発中のアプリが表示されます。
この中の Root.plist を編集することで設定画面の項目を編集することが出来ます。 設定項目については公式リファレンスをご確認ください。 Settings Application Schema Reference
Source:Preferences and Settings Programming Guide
Root.plist の子ページを作りたい場合は、新たに plist ファイルを作成して、Settings.bundle のルートディレクトリに配置します。
まず、新規ファイルで property list を選択し、作成します。
次にファイルシステムの方で追加した plist を Settings.bundle の中に移動します。Finder で移動する場合は下の図のようにしてください。コマンドラインでする方が早いです。
Root.plist に子設定画面に移動するように plist を追加してみます。
追加したデータのタイプを child pane にします。Title はセルのテキスト、Filename は遷移する plist のファイル名を指定します。
最後に追加した plist の設定を行います。その際に iphone setting plist というタイプに変更すると編集しやすくなります。
子の設定画面で下の図の表示になるように実装してください。
Setting app で設定した項目は NSUserDefaults を使用してアプリ内でアクセスすることが可能になります。
はじめに
-
導入
-
1.3 UIViewController1 UIViewController のカスタマイズ(xib, autoresizing)
-
UIKit 1 - container, rotate-
-
UIKit 2- UIView -
-
UIKit 3 - table view -
-
UIKit 4 - image and text -
-
ネットワーク処理
-
ローカルキャッシュと通知
-
Blocks, GCD
-
設計とデザインパターン
-
開発ツール
-
テスト
-
In-App Purchase
-
付録