我的应用程序中有以下代码来显示模态视图:
InfoTableViewController *infoTableViewController = [[[InfoTableViewController alloc] initWithNibName:nil bundle:nil] autorelease];
infoTableViewController.title = @"Pirateometer";
infoTableViewController.navigationItem.rightBarButtonItem =
[[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self action:@selector(dismissInfo)] autorelease];
navController = [[UINavigationController alloc] initWithRootViewController:infoTableViewController];
[self presentModalViewController:navController animated:YES];
[navController retain];
然而,当我跑步时,而不是导航栏右侧的完成按钮,我有一个编辑按钮。如果我将.rightBarButton更改为.leftBarButton,我的完成按钮会按预期显示在左侧,但是编辑按钮再次出现在右侧。
我应该在代码中专门删除这个不需要的编辑按钮,还是我做错了让它出现在第一位?如果我必须删除它,我该怎么做呢?
答案 0 :(得分:3)
确保在InfoTableViewController的-viewDidLoad方法中,您没有将右键设置为编辑按钮。
在默认的UITableViewController子类存根代码中,有一个注释掉的行可以执行此操作。也许你不小心取消了它?
在-viewDidLoad中设置它将在你已经在你的包含代码中设置之后执行,因为该方法在viewController实际加载之前不会运行(即当你以模态方式呈现它时)。