*

iOSプログラミングのキモ(AppDelegate説明 NSUserDefaultsに設定情報を格納する )

公開日: : 最終更新日:2014/01/22 Apple, iOS, iPad, iPhone, XCode

QTubeは、YouTubeを閲覧するときに 国別コードを設定しています。国別コードは iOSに設定された言語情報を取り出して、それに合う国別コードを自動的にセットします。国別コードは自由に変更出来、アプリ終了後も保存されるため 次回起動した際には最後に設定された国別コードが適用されます。国別コードの保存にはNSUserDefaultsを使っています。NSUserDefaultsはフラッシュメモリ上にデータを格納するクラスです。今回のようにコンパクトな情報を保存するときに、よく使われます。

NSUserDefaultsを使って国別コードを読み込む

AppDelegateから抜粋

-(NSString *)getLocaleCountryCodeFromNSUserDefaults
{
    NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
    NSString *s = [ud stringForKey:LocaleCountryCode];
    return s;
}

NSUserDefaultsからデータを読み込む方法は簡単です、NSUserDefaultsインスタンスを取り出し(3行目)、取出したいデータに紐付けたキー文字列(ここではLocaleCountryCode)を使って取り出す(4行目)だけです。データがなかった場合、返り値は nil になります。

NSUserDefaultsを使って国別コードを書き込む

AppDelegateから抜粋

-(void)setLocaleCountryCodeFromNSUserDefaults:(NSString*)localeCountryCode
{
    NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
    [ud setObject:localeCountryCode forKey:LocaleCountryCode];
    [ud synchronize];
}

NSUserDefaultsからデータを読み込む方法も簡単です、NSUserDefaultsインスタンスを取り出し(3行目)、格納したいデータに紐付けたキー文字列(ここではLocaleCountryCode)を使って保存する(4行目)だけです。注意したいのは最後に synchronize メソッドを呼んで(5行目) 確実にフラッシュメモリ上に保管させることです。

関連記事

iOSプログラミングのキモ(AppDelegate説明 デバッグをやりやすくするための工夫:NSSetUncaughtExceptionHandler )

デバッグはプログラミングを進めていく上で避ける事が出来ません。どうしてもバグは入ってきます。重要なの

記事を読む

iPhoneが7GBの転送制限に引っかかりそうになって Nexus7(2013)LTE版のテザリング機能が大活躍

皆さんは スマホを使ってて、転送制限に引っかかったことはありますか?私はあります(笑) 最

記事を読む

iOSプログラミングのキモ(サードパーティ製ライブラリをサクッと入れるcocoapods)

iOSプログラミングでは 便利なライブラリがたくさんあります。特にUI系のライブラリは豊富で自分で作

記事を読む

iOSプログラミングのキモ(複雑な画面を複数のViewControllerで制御する その2)

先週は、複数のViewControllerで1つの画面を構成する話のうち、親ViewControll

記事を読む

iOSプログラミングのキモ(MainViewController説明 : dispatch_asyncとブロック構文を使った 今どきのお手軽マルチスレッドプログラミング)

TwitterやYouTubeといったサービスでは、コンテンツの見出しにサムネイルが付加されることが

記事を読む

iOSプログラミングのキモ(拡張子がpchというファイルの役目)

XCodeで プロジェクトを作成すると、-prefix.pch というファイルができています。このフ

記事を読む

iOSプログラミングのキモ(2:ソースコード概説 )主要なObjective-Cソース・ファイル一覧

QTubeの主要Objective-Cのソース一覧です。 iOSでは アプリを作る場合 Objec

記事を読む

iOSプログラミングのキモ(1:QTubeアプリの説明 )

ソースの説明の前に、QTubeとはどんなアプリなのかを説明します。 QTubeは Youtub

記事を読む

iOSプログラミングのキモ(デバッグをやりやすくするための工夫:Debug.hのインクルード )

前回 紹介した Debug.h は、使う際 以下のようにソースファイル(ここでは拡張子が m のもの

記事を読む

iOSプログラミングのキモ(iOS7から使えるようになったマルチタスク機能、NSURLSessionUploadTask の困った現象)

このブログでも度々書いてきたFileQ iOS版ですが、今月末に Appleに申請できそうな

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

FileQ Hosting 月額99円 容量1GB


サイト管理 Mezzanine
Django上で動くCMS Mezzanine 用のモジュールを作ってみる その1

Django上で動くCMS Mezzanine上で動く、モジュールを作

ホーム Mezzanine
Django上で動くCMS Mezzanine を インストールする MacOSX Yesemite 編

Mezzanineは Django WEBフレームワーク上で動くCMS

EclipseにGWT(Google Web Toolkit) Plugin for Eclipseを入れようとしてハマった

最近PHPでちょっとした業務システムを作りました。業務システムの特徴と

ブログを半年やった成果を Google Analytics から眺める

今年の1月からブログを書き始め、そろそろ半年が経とうとしています。

母校で特別 講義をやってきました。

少し 間が空いてしまいました(^_^;) ちょっと前になりますが

→もっと見る

mautic is open source marketing automation
PAGE TOP ↑