我正在使用UITableViewController,我想滑动删除单元格。已经连接到dataSource和delegate。
随机检测, 有时控制台打印
attempting to set a swipe to delete cell when we already have one....that doesn't seem good
他是我的代码,
-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
return UITableViewCellEditingStyleDelete;
}
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete) {
}
}
修改
我的cellForRow AtIndexPath
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kFavouriteCell forIndexPath:indexPath];
[self customizeFavouriteCell:cell withIndexPath:indexPath];
return cell;
}
答案 0 :(得分:0)
您需要删除单元格的数据,然后删除单元格。使用deleteRowsAtIndexPaths:withRowAnimation:
。
在此协议功能中:
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete) {
// ... delete data here ...
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
}
}
如果您有关于执行其中任何一项的更具体问题,请与我们联系。
答案 1 :(得分:0)
您可以使用:
- (void)tableView:(UITableView *)tableView commitEditingStyle:
(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
//add code here for when you hit delete
}
}