У меня есть UITableView
, который был создан программно.Сейчас я пытаюсь добавить возможность удалять строки, используя режим редактирования.
Я добавил способ сделать это по умолчанию:
self.navigationItem.leftBarButtonItem = self.editButtonItem;
Когда вы нажимаете кнопку,он входит в режим редактирования, и кнопка превращается в кнопку «Готово».
Однако, когда я «сдвигаю, чтобы удалить» строку, в которой просто отображается кнопка удаления, существующая кнопка редактирования не меняется на «done '.
Есть ли что-то, что мне нужно сделать дополнительно, потому что я создал представление таблицы программно?
Ниже приведен код для моего просмотра таблицы:
- (void)viewDidLoad
{
self.voucherTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 36, 320, self.view.frame.size.height - 36) style:UITableViewStylePlain];
self.voucherTableView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleWidth;
self.voucherTableView.delegate = self;
self.voucherTableView.dataSource = self;
[self.view addSubview:self.voucherTableView];
self.navigationItem.rightBarButtonItem = self.editButtonItem;
}
// Default table view data source methods go here
- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
[super setEditing:editing animated:animated];
[self.voucherTableView setEditing:editing animated:animated];
}
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
return UITableViewCellEditingStyleDelete;
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete)
{
// Commit the delete
}
}