頻度が多くない設定を行う場合は、設定画面アプリから行うことが多いのですが、実際に、その実装方法を調べました。
1.「Resource」の上で右クリックして、「追加」→「新規ファイル」を選択
2.「Resource」→「Settings Bundle」を選択
3.ファイル名は、「Settings.bundle」のまま
4.「Root.plist」を次のように設定を行いビルドをすればオッケー
実際に、設定アプリではこのようになります。
プロジェクト内のソース(Objective-C)で設定した値を取得したい場合は、このようにすれば取得することができます。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; if([defaults stringForKey:@"kSettingCountryKey"] == nil){ NSLog(@"デフォルト値が設定されていません。"); } |
kSettingCountryKeyは、Root.plistで設定したKey値です。
取得しているメソッドにstringForKeyを使っていますが、値によってコールするメソッドも変わってきます。
詳しいメソッドは、NSUserDefaultsクラスで確認することができます。
if文を使ってnilかどうかを判定している理由は、設定アプリを通して一回も設定していない場合、返す値がnilとなるためです。
(実際に検証済み)
後、実機でテストを行う場合は、いったん、テストアプリの削除を行い再インストールする必要があります。
今回、リストから一つ選択する設定方法を採用しましたが、他にも設定方法があって、それについては、Settings Application Schema Referenceで確認することができます。
また、全体の流れは、iOS Application Programming GuideのImplementing Application Preferencesで確認しましたが、後半で紹介されているサンプルの仕様が古いので、Settings Application Schema Referenceで各設定方法の仕様を確認する方が最短だと思います。
是非、参考に。
Tweet
0 コメント:
コメントを投稿