カテゴリー : 2010年 5月11日

UIImagePickerControllerのボタンのラベルがローカライズされない

UIImagePickerControllerのナビゲーションバーのボタンが、シミュレータの言語設定を切り替えても変わらないので悩みました。
plistの「Localization native development region」で指定した言語で常に表示されているようです。

結局、Localizable.stringsを追加して、英語・日本語でローカライズしてみたところ、UIImagePickerControllerのナビゲーションバーのボタンも切り替わるようになりました。謎です。

UIButtton setTitle:forState:ではまる

forState:の引数が論理和で一気に指定できると思い込んでいました。しかし次のように指定してもタイトルがなぜか変わらない。

[button setTitle:title forState:UIControlStateNormal | UIControlStateHighlighted | UIControlStateDisabled | UIControlStateSelected];	

しばらく悩みました。やはり一つずつ指定しないとだめなようです。

[button setTitle:title forState:UIControlStateNormal ];	
[button setTitle:title forState:UIControlStateHighlighted];	

元からそういうものかわかりませんが、だめなものはだめでしたw

iPhoneシミュレータに写真をとりこむ時にiTunesを使えるのか?

UIImagePickerControllerを使ったプログラムをテストするとき、シミュレータ内に写真が必要です。全く写真が存在しない場合、次のように表示されます。

screenshot

「You can sync photos and videos onto your iPhone Simulator using iTunes」をまともにとるとiTunesとiPhoneシミュレータを同期して写真を転送できそうなのですができませんでした。どうすればいいのでしょうか。

MacからiPhoneシミュレータ上のSafariにドロップし、クリック長押しで保存する方法だとできるみたいなので、こうするのが正解かな?

MacでiPhoneの写真を取り込む

MacでiPhoneの写真を取り込むには「イメージキャプチャ」という標準アプリを使うのが簡単です。
イメージキャプチャ

「すべてを読み込む」ボタンを押せばiPhoneの写真がすべてMacに転送されます。