我有一个
UIViewController-> UINavigationBar + UITableView
再解释一下
我通过UIBuilder..。
1:用XIB文件创建了一个新的UIViewController
2:使用UIBuiler
我放了一个UINavigationController
3:,然后我把UITableView
放在navigationBar
下面,所以它给了我..。
A: UIViewController-> UINavigationBar + UITableView
现在,我正在从一个工作良好的Webservice中加载UITableView中的数据。
我再次用sam config做了一个xib,它是
B: UIViewController-> UINavigationBar + UITableView
所以现在,当我试图将视图B推到视图A上时,使用code...it下面的视图将无法工作.
SelectSiteViewController *siteViewController = [[SelectSiteViewController alloc] initWithNibName:@"SelectSiteViewController" bundle:nil];
[self.navigationController pushViewController:siteViewController animated:YES];
当我检查UINavigationController *nav = self.navigation
时
nav是0x0,也就是说我假设为零。
有人能告诉我这里出了什么问题吗..。为什么是nil...and我怎么能让它工作..。
非常感谢.我真的很感谢你的帮助
发布于 2010-11-19 05:33:15
在UIBuilder中,验证文件的所有者引用了UINavigationController。
发布于 2010-11-21 01:32:53
明白了。
我稍微改变了一下架构。
我用它的xib创建了一个新的UIViewController类。并编码了新的UINavigationController。
- (void)viewDidLoad {
[super viewDidLoad];
UINavigationController *navigationController
navigationController = [[UINavigationController alloc] init];
[self.view addSubview:navigationController.view];
switch (whichViewController) {
case 1:
viewController = [[xxxx alloc] init];
break;
case 2:
viewController = [[xxx1 alloc] init];
break;
default:
break;
}
[navigationController pushViewController:viewController animated:NO];
[viewController release];
}
然后按一下开关语句中的视图..。
我希望这有道理.
谢谢贾米哈希
发布于 2010-11-19 05:41:00
因此,您要将表视图添加到导航控制器中,对吗?如下所示:
tableView = [[UITableViewController alloc] initWithStyle:UITableViewStylePlain];
navigationController = [[UINavigationController alloc] init];
[navigationController pushViewController:tableView animated:NO];
将表视图作为rootview添加到导航控制器。然后在选择行时,如果希望推送另一个视图控制器,请使用
self.navigationController pushViewController: newViewController animated:YES];
在didSelectRowAtIndex方法中。
注意:它的UITableViewController *tableView和UINavigationController *导航控制器通过声明。因此,为您的表编写相应的代码。
https://stackoverflow.com/questions/4221988
复制相似问题