Objective-C

UITableViewControllerのviewWillAppear:メソッドで気をつけること

かなり以前にハマったことがある内容ですが、たまたま思い出したのでメモを兼ねて書いておきます。 UITableViewControllerのサブクラスを使う場合、viewWillAppear:メソッドの中で、tableViewオブジェクトのreloadDataを呼び出すような実装を行うことが、一…

SQLiteで日時を扱う方法

SQLiteには、DATEやTIMESTAMPなどの、日時を扱うデータ型はありません。一方で、Objective-Cのプログラムでは、NSDateオブジェクトで日時が表現されます。 では、NSDateオブジェクトの値をSQLLiteのテーブルのカラムに格納するときに、どのようにマッピング…

Core Locationのaccuracyについて

CLLocationManagerのdesiredAccuracyプロパティは、位置情報を取得する時に、求めたい精度を指定するためのパラメタです。しかしながら、実際に取得される位置情報は、その精度を満たしているとは限りません。そのことについて、Appleのドキュメントに書かれ…

iPhoneシミュレータで、Core Locationを使う場合に気をつけること

iPhoneシミュレータには、GPS機能はないので、Core Locationが実機と同等に使えないのは当然ですが、知らないとハマることもあるので、メモを兼ねて、書いておこうと思います。 iPhoneシミュレータの制約 常に、同じ位置情報が返ってくる。 その値は、北緯37…

Objective-Cのメモリ管理に関する参考資料

前回のエントリで、オブジェクトの生成とメモリ管理 - The iPhone Development Playgroundについて書きました。 すでにご存知の方も多いかもしれませんが、Appleから提供されている関連ドキュメントをお知らせしてませんでした。http://developer.apple.com/…

オブジェクトの生成とメモリ管理

Objective-C2.0では、以下の2つのメモリ管理方式が、ランタイムシステムによって提供されています。 マネージドメモリ プログラマが、オブジェクトを保持するのか、解放するのかを明示的に指定する。あるオブジェクトが、誰かに保持されているかどうかは、参…