我一直在努力将刷卡删除功能添加到我的应用中的普通UITableView
,但没有成功。
我有UIViewController
唯一一个UITableView
,它使用基本单元格和自定义单元格。此UIViewController
位于UINavigationController
之上,centerViewController
是IIViewDeckController
的UITableView
-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"canEditRowAtIndexPath");
return YES;
}
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"commitEditingStyle");
}
-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"editingStyleForRowAtIndexPath");
return UITableViewCellEditingStyleDelete;
}
- (void)tableView:(UITableView *)tv didEndEditingRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"didEndEditingRowAtIndexPath");
}
的委托和数据源设置正确,这是当前代码:
cellForRowAtIndexPath
其他委托方法(如canEditRowAtIndexPath
,didSelectRowAtIndexPath
和editingStyleForRowAtIndexPath
)被正确调用,但[table setEditing:YES animated:YES];
永远不会在任何单元格上调用。
更新
当我{{1}}时,确实启用了编辑模式。
这里可能缺少什么?
答案 0 :(得分:4)
问题在于,IIViewDeckController
抓住了滑动事件以打开侧边栏。
通过将IIViewDeckController
panningMode
设置为IIViewDeckNavigationBarPanning
,它会删除此功能,从而解决UITableView
的问题。