2011-01-07 5 views
1

게시물을 읽었습니다 : Pop-up modal with UITableView on iPhone 다음 답변을 이해할 수 없습니다 (원래 게시물에 댓글을 달 수 없으므로이 새로운 질문) :iPhone에서 UITableView를 사용하는 팝업 모달

UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:optionViewController]; 

왜 새로운 optionController가 이미있을 수 있습니다이라고 곳에서 창으로 새 컨트롤러를 할당?

난 그냥 무엇을 작성하는 경우 : 나는 목록이있는 경우

OptionViewController* optionViewController = [[OptionViewController alloc] initWithNibName:@"OptionView" bundle:nil]; 
[self.navigationController presentModalViewController:optionViewController animated:YES]; 

작동하는 것 같다 ...

, 즉 내가 수정보기로 전환 곳에서, 상세보기로 이동, 그런 다음이 옵션 윈도우를 호출하는 곳에서이 옵션 윈도우를 호출하는 데 사용할 코드는 무엇입니까? 이 하나 ? 다른 건요? 정말 화면 사이에 UINavigationController 다루는 문제가 있습니다 ... (첫 번째 정의해야 할 곳, 화면간에 전달되어야 할 때, 새 것을 만들면 ...)

답변

2

모달 뷰는 그렇지 않습니다. 부모의 UINavigationController을 사용하십시오. 즉, 모달보기에서 새보기 컨트롤러의 "스택"이 필요한 경우 사용자가 직접 추가해야합니다. 반면에 모달보기에서 탐색 컨트롤러의 기능을 필요로하지 않는다면 추가 할 이유가 없습니다.

내 루트 뷰 컨트롤러는 UINavigationController가 있습니다 여기에

내가 내 애플 리케이션의 두 그것을 어떻게의 자세한 내용을 소네 있습니다.

[self dismissModalViewControllerAnimated:YES]; 
+0

@Stephen 달링턴 : 모달 뷰가 다음이 코드를 사용하여 해제 할

 TwitterPostViewController* vc = [[TwitterPostViewController alloc] init]; [viewc presentModalViewController:vc animated:YES]; [vc release]; 

: 질문 편집 – Oliver

+0

귀하의 코드는 괜찮이 코드를 사용하여 모달 뷰를 엽니 다. 앞서 말했듯이 모달 뷰에서 실제로 필요하지 않으면 UINavigationController를 만들 필요가 없습니다. –

+0

@Stephen Darlington : 사실 나는 계속해서 코드화하고 가능한 문제를 푸딩했습니다. 내 코드를 사용하면 모달보기를 취소 할 수 없습니다.이 코드로이 작업을 수행하는 방법에 대한 아이디어는 무엇입니까? [self.navigationController dismissModalViewControllerAnimated : YES]는 작동하지 않습니다 ... 물론 옵션보기 나 부모 호출자에서도 마찬가지입니다. – Oliver