Делаем UITableviewCells удаляемыми - PullRequest
1 голос
/ 15 июля 2010

Как ячейки UITableView могут быть удалены пользователями?

Ответы [ 2 ]

2 голосов
/ 15 июля 2010

Быстрый пример:

// create a mutable array to manage your table data
NSMutableArray *tableList;

@property (nonatomic, retain) NSMutableArray *tableList;

в вашем методе viewDidLoad вы можете инициализировать его данными (хотя вы должны проверить, является ли tableList нулевым первым)

NSString *path = [[NSBundle mainBundle] pathForResource:@"TableData" ofType:@"plist"];
NSMutableArray *array = [[NSMutableArray alloc] initWithContentsOfFile:path];

self.tableList = array; 
[array release];

затем в файле реализации вы реализуете этот метод делегата

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

    NSUInteger row = [indexPath row]; 
    [self.tableList removeObjectAtIndex:row]; 

    [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];

}

, затем вы можете переключать режим редактирования с помощью

[self.tableView setEditing:!self.tableView.editing animated:YES];
1 голос
/ 15 июля 2010

Взгляните на метод делегата источника данных табличного представления -tableView:commitEditingStyle:forRowAtIndexPath:.

Вы переопределяете этот метод в своем делегате табличного представления (обычно в вашем контроллере табличного представления) и помещаете здесь свою логику удаления.

Например, вы можете вызвать UIAlertView, чтобы попросить пользователя:подтвердите удаление или просто напрямую управляйте моделью данных, удаляя объект из источника данных табличного представления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...