最近新遇到一个问题,感觉莫名其妙,所以今天写下来给大家分享一下。。。
情况是这样的,
以前我做表格的侧滑删除,是这样做的:
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
return YES;
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
//侧滑点击做出的相应操作
}
ok啊,这样是没有问题的,但是UITableview做侧滑删除还有一个方法就是:
- (NSArray<UITableViewRowAction *> *)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath {
}
没错,如果侧滑要添加多个按钮,那么你肯定用过这个代理方法,通过构建UITableviewRowAction对象来实现。
Now,but。。。。。这个时候问题出现了,当你使用UITableviewRowAction来实现侧滑删除的时候,ios9没有问题,但是在ios8上直接侧滑没有反应好嘛。日了小泰迪了
我一直使用ios9点几的系统真机的,偶然发现ios8的手机无法侧滑。。。
解决办法就是,把
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
}
这个代理方法添上,你什么都不用做,就摆在那儿,你发现就可以侧滑,而且相当流畅舒爽!!!