Jul*_*les 7 iphone uitableview
我添加了我的编辑按钮
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self
action:@selector(editNavButtonPressed)] autorelease];
Run Code Online (Sandbox Code Playgroud)
但我似乎无法将其转为完成和返回,控制台说它是Null
-(IBAction)editNavButtonPressed
{
//[self.tableView setEditing:YES animated:YES];
BOOL editing = !self.tableView.editing;
NSLog(@"tile=#%@#", self.navigationItem.rightBarButtonItem.title);
if ([self.navigationItem.rightBarButtonItem.title isEqualToString:NSLocalizedString(@"Edit", @"Edit")]) {
self.navigationItem.rightBarButtonItem.title = NSLocalizedString(@"Done", @"Done");
} else {
self.navigationItem.rightBarButtonItem.title = NSLocalizedString(@"Edit", @"Edit");
}
//self.navigationItem.rightBarButtonItem.enabled = !editing;
//self.navigationItem.rightBarButtonItem.title = (editing) ? NSLocalizedString(@"Done", @"Done") : NSLocalizedString(@"Edit", @"Edit");
[self.tableView setEditing: editing animated: YES];
Run Code Online (Sandbox Code Playgroud)
}
Pey*_*loW 29
您应该使用-[UIViewController editButtonItem],它将从编辑/完成中正确切换状态,并且还将切换UIViewController自身的编辑模式.
设置如下:
-(void)viewDidLoad {
self.navigationItem.rightBarButtonItem = [self editButtonItem];
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以覆盖-[UIViewController setEditing:animated:]以在切换编辑模式时立即收到通知.
-(void)setEditing:(BOOL)editing animated:(BOOL)animated {
[super setEditing:editing animated:animated];
// Add your custom code here
}
Run Code Online (Sandbox Code Playgroud)
或者你可以查询UIViewController它的当前编辑状态,如下所示:
if ([self isEditing]) {
// Do something editing like
} else {
// Do whatever is not editing like.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7296 次 |
| 最近记录: |