2011-12-01 1 views
0

viewControllerpopoverController에서 navigationController으로 푸시하려고하지만 나에게 맞지 않습니다.popoverController에서 navigationController에 액세스하는 방법?

이 내가 popoverController에 전화하는 방법입니다

PdfDetailViewController *vc=[[PdfDetailViewController alloc] initWithNibName:@"PdfDetailViewController" bundle:nil]; 
UIViewController* popoverContent = [[UIViewController alloc] init]; 
UIView* popoverView = [[UIView alloc] initWithFrame:CGRectMake(0,0, 400, 280)]; 
vc.contentSizeForViewInPopover = CGSizeMake(700, 390); 
self.popoverController = [[UIPopoverController alloc] initWithContentViewController:vc]; 
[self.popoverController presentPopoverFromRect:cell.frame inView:self.tableView permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
[popoverView release]; 
[popoverContent release]; 

이것은 popoverController에서 내 코드는 다음과 같습니다

CommentsViewController *commentsViewController = [[CommentsViewController alloc] init]; 
commentsViewController.index = PdfID; 
[self.parentViewController.navigationController pushViewController:commentsViewController animated:YES]; 
[commentsViewController release]; 

아무것도

이 제발 도와주세요 일어나지 ... 감사합니다!

답변

1

UIPopoverController에는 사용자가 직접 추가하지 않으면 NavigationController가 없습니다. 예를

당신은 그 의미가 있도록 코드를 청소하여 시작해야
MyViewController *myViewController = 
     [[MyViewController alloc]  
      initWithNibName:@"MuViewController" 
        bundle:[NSBundle mainBundle]]; 


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

    UIPopoverController *popover = 
     [[UIPopoverController alloc] 
      initWithContentViewController:navController]; 
0

를 들어

. 지금 당장 당신은 아무 이유없이 popoverView라는 UIView를 생성하고 있습니다. 자신을 혼란스럽게하는 것 뿐이며, 의미 코드를 표시 할 때 성취하려는 것을 이해하는 것이 더 어렵습니다.

완료하면 입니다. 이 줄이 작동하지 않는 문제입니까 : self.parentViewController.navigationController pushViewController:? 그렇다면 parentViewControllernavigationController이 그들이 생각하는 개체인지 확인하고 로깅을 시도하십시오.

관련 문제