"Разблокировать, чтобы удалить" при редактировании Subview - PullRequest
0 голосов
/ 16 октября 2011

У меня есть эта таблица, связанная с базой данных с надписью «Редактировать» в правом верхнем углу. Я могу удалить смахивание, но если я нажму кнопку «Изменить», ничего не произойдет! Я имею в виду, что я написал аналогичный вызов для другой таблицы в той же программе, и когда я нажимаю edit, появляется небольшое «Разблокировать для удаления»; затем, если вы нажмете его, вы можете удалить элемент / строку ... не здесь!

- (void)viewDidLoad
{
    self.title = @"Categorie";
    [super viewDidLoad];
    self.navigationItem.rightBarButtonItem = self.editButtonItem;
    [self.navigationItem setHidesBackButton:YES animated:YES];
    [tableView reloadData];
}

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
    return YES;
}

- (void)tableView:(UITableView *)_tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (editingStyle == UITableViewCellEditingStyleDelete)
    {
        // A lot of code... 
    }
}

1 Ответ

1 голос
/ 16 октября 2011

Вы должны указать tableView начать редактирование с setEditing: (BOOL) animated: (BOOL) animate

//Init your editBarButton
UIBarButtonItem *editButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(editTable)];

//Init your doneBarButton
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneEditing)];

Вот пример метода действия:

- (void)editTable {
   if (!self.tableView.editing) [self.tableView setEditing:YES animated:YES];
   self.navigationController.rightBarButtonItem = self.doneButton;
}

- (void)doneEditing {
   if (self.tableView.editing) [self.tableView setEditing:NO animated:YES];
   self.navigationController.rightBarButtonItem = self.editButton;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...