我有一個UIViewController子類(說BBB),從已經寫好的自定義UIViewController類(說AAA)繼承。 BBB類有一個UITableView,當用戶點擊UITableView的任何單元格時,我想推入另一個UIViewController類(稱爲CCC)。從另一個UIViewController推UIViewController - 如何?
所以,我試圖推動BBB的tableView: didSelectRowAtIndexPath:
方法中的CCC控制器。輕敲單元格時
我的代碼,
CCC *ccc = [[CCC alloc] init];
[self.navigationController pushViewController:ccc animated:YES];
[ccc release];
什麼也沒有發生,所以我用下面的代碼進行覈對類BBB的naviagtion控制器。
if (self.navigationController == nil)
{
NSLog(@"Navigation controller is nil");
}
消息已成功打印:)所以,我想有些事情分配到導航控制器和我的運氣不好,這是一個只讀屬性。
然後,我嘗試通過分配ccc作爲rootviewcontroller來創建本地UINavigationController,然後嘗試推送該本地導航控制器。它引發一個異常「不止一次推送相同的視圖控制器實例」。
我的問題是,
是否有可能尋找到導航控制器獲得AAA級的零值?我沒有在我的BBB類中將導航控制器設置爲零,我在類AAA中查找是否有類似「self.navigationController = nil」的語句。但沒有什麼是這樣的。
如何推送CCC類?
感謝
什麼是你的窗口的根視圖控制器?是AAA還是BBB,還是別的?你在使用storyboard或xib,還是在代碼中做所有事情? – rdelmar
我的根視圖控制器是另一個控制器(比如說DDD)。我只是通過代碼來完成這一切。 – Confused