2010-11-20 14 views
0

私はiPhone開発を初めて利用しています。私は2つの見解を含むアプリケーションに取り組んでいます。私は、デフォルトのIphoneカメラを開くビューのカメラボタンを持っています。Iphoneカメラが返ってきたらビューを切り替えるにはどうすればいいですか?

UIImagePickerController *picker = 
[[UIImagePickerController alloc] init]; 
picker.delegate = self; 
picker.allowsEditing = NO; 
picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
[self presentModalViewController:picker animated:YES]; 
[picker release]; 

最初のビューのビューコントローラはまた、カメラのUIImagePickerControllerDelegateである:これはViewOneControllerカメラボタンのIBActionは、このコードを有することによって達成されます。画像をクリックするとされている場合、機能imagePickerControllerにカメラビューを返します:didFinishPickingWithMediaInfo私はこれを実行します。

(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 
    [picker dismissModalViewControllerAnimated:YES]; 
[self presentModalViewController:ViewTwoViewController animated:YES]; 
} 

だから、基本的に私が達成しようとしているすべてのviewoneクリックからであるが、「写真を撮る」--->開くカメラ - >カメラが完了した後、2つのビューにジャンプします。それはflickrアプリにあるものとまったく同じです。しかし、私はカメラから写真を撮った後、私のアプリはビュー1に戻り、ビュー2は表示されません。私はここで何が欠けていますか?

また、概念的な観点からは、私はIOSがどんなアプリのためのビューのスタックを維持すると思います。 presentModalViewControllerが呼び出されると、ビューが表示され、スタックに追加され、dismissModalViewControllerが呼び出されると、ビューがスタックから削除され、親ビューが表示されます。そうですか?

ありがとうございました。

答えて

0

pickWillAppearで[self presentModalViewController:ViewTwoViewController animated:YES]を呼び出す必要があります。これは、ピッカービューが削除された後に呼び出されます。 必要に応じて、viewTwoだけを表示するように、いくつかのチェックを付けてコールを囲む必要があります。

+0

私はコードを表示しようとしましたが表示されます。それでも動作しません。 –

+0

私は他のフォーラムから答えを見つけました。どうやら、iPhoneはアニメーションで2つのビューを切り替えることはできません。そこで私は[picker dismissModalViewControllerAnimated:YES]を変更しました。 [picker dismissModalViewControllerAnimated:NO]への行。元のコードでそれは働いた。ありがとう。 –

関連する問題