iOS 不要使用tag传递TableViewCell的indexPath值

对tableView执行删除操作执行后,UIButton的tag值是不会更新的,只有在执行[_tableView reloadData]方法(或滑动列表,这时会调用cellForRowAtIndexPath方法)才能刷新。

所以这时TableViewCell中的button.tag值已经不对了。

获取indexPath的正确方法是:

-(void)deleteButtonPress:(UIButton*)sender
{
//首先获得Cell:button的父视图是contentView,再上一层才是UITableViewCell
UITableViewCell*cell=(UITableViewCell*)sender.superview.superview;
 
//然后使用indexPathForCell方法,就得到indexPath了~
NSIndexPath*indexPath=[_tableView indexPathForCell:cell];
}

 

参考链接:iOS 不要使用tag传递TableViewCell的indexPath值

posted @ 2017-05-18 16:16  听风gcl  阅读(598)  评论(0编辑  收藏  举报