2010-11-20 4 views
0

저는 아이폰 개발을 처음 사용합니다. 나는 두 가지 관점을 포함하는 응용 프로그램을 작성 중입니다. 나는보기에 하나의 기본 아이폰 카메라를 열 카메라 버튼이 있습니다. 이것은 ViewOneController 카메라 버튼의 IBAction를이 코드를 구비함으로써 달성된다 :아이폰 카메라가 돌아올 때 화면을 전환하는 방법은 무엇입니까?

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

제 뷰에 대한 뷰 컨트롤러는 카메라의 UIImagePickerControllerDelegate이다. 사진을 클릭하고하면 함수 imagePickerController에 카메라 뷰를 반환 : didFinishPickingWithMediaInfo 나는이 수행

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

그래서 기본적으로 내가 달성하기 위해 노력하고 모든 viewone 클릭 출신은 "사진을 찍을"---> 열기 카메라 -> 카메라가 끝나면 두 번보기로 점프. 플리커 앱에서와 매우 흡사합니다. 그러나 카메라에서 사진을 찍은 후 내 앱이 하나의보기로 돌아가고 두 개의보기가 표시되지 않습니다. 내가 여기서 무엇을 놓치고 있니?

또한 개념적 관점에서 볼 때 IOS는 모든 앱에 대한보기 스택을 유지한다고 생각합니다. presentModalViewController가 호출되면 뷰가 표시되고 스택에 추가되고 dismissModalViewController가 호출되면 뷰가 스택에서 제거되고 부모 뷰가 표시됩니다. 그게 맞습니까?

감사합니다.

답변

0

피커 뷰가 제거 된 후에 호출 될 viewWillAppear에서 [self presentModalViewController : ViewTwoViewController animated : YES]를 호출해야 할 수도 있습니다. 해당하는 경우보기 2 만 제공하려면 일부 확인을 사용하여 통화를 둘러야 할 수도 있습니다.

+0

보기에 코드가 표시됩니다. 여전히 작동하지 않습니다. –

+0

그래서 다른 포럼에서 답을 찾았습니다. 분명히 Iphone은 애니메이션 방식으로 두 가지보기를 전환하는 것을 허용하지 않습니다. 그래서 나는 [picker dismissModalViewControllerAnimated : YES]를 변경했다. [picker dismissModalViewControllerAnimated : NO]에 대한 회선. 원래 코드에서 작동하고 작동했습니다. 감사. –

관련 문제