这是我第一次尝试使用UINavigationController实现从tableView单元格到另一个tableView的导航,这对我不起作用。
我没有使用nib文件,我有一个简单的tableView,可以在应用程序的模态对话框中显示它,它可以正常工作,现在我在其中一个单元格中添加了displayInidcator,以使用户能够从固定选项中进行选择另一个列表(tableView)中可用的选项数。为此目的,我还有另一个使第二个tableView的类。现在的问题是,从第一个表格视图中的单元格(包含公开图标)导航到第二个表格视图没有任何作用,没有错误,没有任何反应。我猜我设置导航控制器的方式是错误的,代码没有落在委托中,或者根本没有第二类的数据源。
在方法:didSelectRowAtIndexPath中的第一个TableView中,我试图捕获该行,然后像这样调用第二个tableView:
mySecondViewController *secondVC = [[[mySecondViewController alloc] initWithStyle:UITableViewStyleGrouped ] autorelease];
UINavigationController *navCont = [[UINavigationController alloc] initWithRootViewController: self];//not sure the first controller should act as the root controller?
[navCont pushViewController:secondVC animated:YES]; //it does nothing, no error,...
第二个tableViewcontroller类包含所有委托和数据源方法以及初始化方法:
- (id)initWithStyle:(UITableViewStyle)style
{
if ((self = [super initWithStyle:style])) {
}
return self;
}
and declared in interface as:
@interface stockOptionViewController : UITableViewController {
}
我试图玩viewDidLoad,但没有帮助。
请帮我,因为我一无所知,发现的所有示例代码均基于使用nib文件。
谢谢,
锦
最佳答案
您的导航控制器应该是应用程序委托窗口的根视图控制器,第一个视图控制器应该是导航控制器的根视图控制器,然后您可以将新的控制器推入到它。
请参阅UINavigationControlle r的文档。
目前,您正在创建导航控制器,但没有将其放置在任何地方,因此,要求它推送新的视图控制器是没有意义的。您拥有正确的代码,只是顺序不正确。