2

사진 미리보기 구성 요소를 만들고 있습니다. 지금은 modalViewController을 표시하기위한 문제를 만났다 : 나는 미리보기를 표시 할 때, 내가 무엇을하고 있는가하는 것은 다음과 같이이다 :ModalViewController가 뷰 아래에 숨겨져 있습니다.

UIWindow *window = [[[UIApplication sharedApplication] delegate] window]; 
EKImageViewer *viewer = [[EKImageViewer alloc] initWithFrame:frame]; 
[window addSubview:viewer]; 
[window addSubview:viewer.preview]; 
[window addSubview:viewer.shareBtn];//A UIButton control 

미리보기를 닫고, 내가 뭐하는 거지은 다음과 같이이다 :

[viewer.shareBtn removeFromSuperview]; 
[viewer.preview removeFromSuperview]; 
[viewer removeFromSuperview]; 
미리 구성 요소의 shareBtn (있는 UIButton)을 누르면 때, 모달 뷰 (MFMailComposeViewController) 표시 할

:

MFMailComposeViewController* controller = [[MFMailComposeViewController alloc] init]; 
controller.mailComposeDelegate = self; 
[[[[[UIApplication sharedApplication] delegate] window] rootViewController] presentModalViewController:controller animated:YES]; 

이상한 뭔가가 일어날를 다음 modalViewContr oller가 미리보기 구성 요소 아래에 표시됩니다. 미리보기 구성 요소를 닫을 때만 modalViewController를 볼 수 있습니까? 내가 틀렸던 것이 있습니까?

답변

3

window 위에 viewer을 더하지 마십시오. 대신에 당신의 rootViewController.view.을 추가하면 해결 될 것입니다. 가능한 경우 rootViewController에서 window에 다른 것을 추가하지 마십시오. 나중에 추가 할 내용이 있으면 rootViewController에 추가 할 수 있습니다.

+0

대단히 감사합니다! 그것은 나를 위해 작동합니다 :) – Hang

+0

당신의 생각 나게 해 주셔서 감사합니다 :) – Hang

관련 문제