2012/03/16

[iOS][objective-C]UIImagePickerControllerのエラーになる件

以前購入したUIKit詳解Camera Programming Topics for iOSを読んでいるのですが、エミュレーターでなぜかうまくいかない。

結果的にうまく動くようになったのですが、エラーとなっていた原因をいくつか推測してみる。

1:UIImagePickerControllerをサブクラス化する必要はないのに、してしまった。

Important The UIImagePickerController class supports portrait mode only. This class is intended to be used as-is and does not support subclassing.

via:Taking Pictures and Movies
つまり、直接、インスタンス化をしないといけないんですな。

2:エミュレーターでは、UIImagePickerControllerSourceTypeCameraをサポートしていない。
これに気づくのにものすごく時間がかかったのだが、当初、プログラム内に下記を入れていなかったのです。
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]){
//カメラの処理を行なう

}
で、毎回、毎回、エラーが起きていたわけだが、elseに、NSLogを入れたところ、そこに処理が移っていたことがわかったので、エラーの原因を特定できました。

ってか、カメラは、macにもともとついているんだから、サポートしてもいいと思うんですけど。

どうなんだろうか。

0 コメント:

コメントを投稿