我有一个UITableViewController的子类,我想添加一个UINavBar。它与原生联系人应用程序的设置非常相似,您点按“添加联系人”,它会在顶部显示带有“取消”和“完成”选项的分组桌面视图,其中包含导航栏。关键是我需要它使用垂直过渡(有效地使用presentModalViewController:animated:yes),但我尝试使用Interface Builder并以编程方式添加它,在这两种情况下,按钮都不响应,并且栏滚动与tableview,而不是保持在顶部。
提前致谢,
HBhargava
答案 0 :(得分:1)
听起来您正在使导航栏成为表格视图的子视图,这解释了导航栏随表格视图滚动的原因。
在动作方法中尝试:
MyTableViewController *table = [MyTableViewController alloc] initWithStyle:UITableViewStyledGrouped];
UINavigationController *nav = [UINavigationController alloc] initWithRootViewController:table];
[self presentModalViewController:nav animated:YES];
然后在您的表格中查看控制器的viewDidLoad
:
UIBarButtonItem *doneButton = [UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(done:)];
self.navigationItem.rightBarButtonItem = doneButton;