2014-02-17 37 views
1

由於某種原因,我的導航控制器無法正常推送。當我點擊UITableViewCell時,視圖控制器未被按下。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    NSLog(@"HERE!"); 
    MyViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"myVC"]; 
    vc.labelText = [self.myArray objectAtIndex:indexPath.row]; 
    [self.navigationController pushViewController:vc animated:YES]; 
    NSLog(@"Pushed"); 
} 

輸出是:

2014-02-17 12:41:47.187 TableViewTesting[37532:70b] HERE! 
2014-02-17 12:41:47.189 TableViewTesting[37532:70b] Pushed 

所以這一切都運行良好,但我仍然只看到我的初始視圖控制器甚至上輕敲細胞後。

+0

使用調試器確保'vc'不是'nil'。同時檢查看看'self.navigationController'不是'nil'。 – Gavin

+0

@Gavin,如果VC是零,然後他會從instantiateViewControllerWithIdentifier異常。我在這裏看到的唯一的事情是,self.navigationController是零,這就是爲什麼沒有發生。 – RaffAl

+1

檢查您的導航控制器。您的控制器是否嵌入導航控制器中。 – Pawan

回答

5

是要從中調用這個代碼嵌入在Navigation Controller視圖控制器?如果不是,那麼當您撥打pushViewController方法時不會發生任何事情。

轉到您的Storyboard,從頂部欄編輯器>中嵌入>導航控制器選擇初始視圖控制器,然後再試一次。

+0

我試過了,但仍然無法正常推送。 – Inbl

+1

要是在我的方式得到了一些其他的問題,但最終這其實也解決我的問題。謝謝! – Inbl

相關問題