我有一個UIViewController類,有一個tableView。在viewDidLoad中:UITableView在編輯模式 - '編輯'按鈕不會改變狀態
UIBarButtonItem *editIcon = [[[UIBarButtonItem alloc]
initWithBarButtonSystemItem: UIBarButtonSystemItemEdit
target:self
action:@selector(toggleEditMode)] autorelease];
在TE法 'toggleEditMode':
-(void)toggleEditMode{
if(self.theTable.editing) {
[theTable setEditing:NO animated:YES];
[self.navigationItem.rightBarButtonItem setStyle:UIBarButtonItemStylePlain];
}
else if ([callsArray count]!=0){
[theTable setEditing:YES animated:YES];
[self.navigationItem.rightBarButtonItem setStyle:UIBarButtonItemStyleDone];
}
}
的問題是,編輯按鈕不會改變做 '完成'。少了什麼東西?我把所有的方法聲明:
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
感謝,
RL
完美。 只是(編輯)if(theTable.editing),因爲de tableView是一個IBOutlet只是改變。該類不是從UITableViewController繼承的。 謝謝, RL – 2011-03-20 14:17:04
不客氣。 :) – AechoLiu 2011-03-20 21:58:04
儘管這是一個老問題,但它幫助我意識到我忘了[super setEditing:editing animated:animated];這是我礦難的原因。 ;)感謝您發佈此信息。 – DataJock 2013-06-21 17:12:37