2012-07-20 3 views
1

현재 썩은 토마토 API에서 영화 목록을 검색하여 테이블에 표시하는 앱을 만들고 있습니다. 내가 UIViewController 내가 한 번 자세한 페이지를 표시 할 수있는 탭을 표시하고 싶습니다.UIViewController를 UITableViewController에 푸시하려고 시도했습니다.

다음은 내 didSelectRowAtIndexPath 코드입니다.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath  *)indexPath 
{ 
    [tableView deselectRowAtIndexPath:indexPath animated:YES]; 
    DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil]; 
    //UINavigationController *navigation = [[UINavigationController alloc] initWithRootViewController:self]; // This line of code throws an exception for some reason. 
    [self.navigationController pushViewController:detailViewController animated:YES]; 
} 

나는 아주 오랫동안 잠을 자지 않았을 수도 있지만, 나 인생의 잘못을 생각할 수는 없다.

추신. 나는 호를 사용하고있다.

+0

navigationController가 NSLog로 nil인지 확인하십시오. – doNotCheckMyBlog

+0

내비게이션 컨트롤러가 초기화 되었습니까? – EsbenB

+0

@RehatKathuria, 그냥 처음이 아닌지 확인한 다음 발견 한 것을 말해주십시오. – doNotCheckMyBlog

답변

2

내비게이션 컨트롤러가 초기화 되었습니까?

당신이 제대로 당신이 당신의 UIViewController 구성 장소에서이 같은 누락하지 않으면 : AppDelegate에에

MyVc = [[MyVC alloc] initWithNibName:@"MyVC" bundle:nil]; 
UINavigationController *navCon = [[UINavigationController alloc] initWithRootViewController:myVc]; 
[_window addSubview:navCon.view]; 
+0

네비게이션 컨트롤러를 시작했는데 네비게이션 바가 나타났습니다.하지만 NSLog는 네일이 없다고 알려줍니다. 나는 혼란스러워. –

+0

이상하게 들립니다. 아마도 당신은 여전히 ​​_window에 이전보기를 추가하고 있습니까?. _window에 단일보기, 즉 navCon의보기 만 추가해야합니다. – EsbenB

0

이 AppDelegate.h에서 이러한 속성은 파일 쓰기

@property (strong, nonatomic) YourFirstViewController *yourFirstController; 
@property (nonatomic, retain) UINavigationController *navigationControl; 

쓰기이 코드를. m 파일

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
    { 

     self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; 
     self.yourFirstViewController = [[YourFirstViewController alloc] initWithNibName:@"YourFirstViewController" bundle:nil]]; 
     navigationController = [[UINavigationController alloc] initWithRootViewController:self.yourFirstViewController]; 
     [self.window addSubview:[navigationController view]]; 
     [self.window makeKeyAndVisible]; 
     return YES; 
    } 

나는 그것이 요 유.

관련 문제