How can I keep track of the index path of a button in a table view cell?

后端 未结 8 613
离开以前
离开以前 2020-12-08 02:37

I have a table view where each cell has a button accessory view. The table is managed by a fetched results controller and is frequently reordered. I want to be able to press

8条回答
  •  轻奢々
    轻奢々 (楼主)
    2020-12-08 03:15

    I had this same issue also and built a simple recursive method that works no matter how many views deep you triggering control is.

    -(NSIndexPath*)GetIndexPathFromSender:(id)sender{
    
        if(!sender) { return nil; }
    
        if([sender isKindOfClass:[UITableViewCell class]])
        {
            UITableViewCell *cell = sender;
            return [self.tableView indexPathForCell:cell];
        }
    
        return [self GetIndexPathFromSender:((UIView*)[sender superview])];
    }
    
    
    -(void)ButtonClicked:(id)sender{
        NSIndexPath *indexPath = [self GetIndexPathFromSender:sender];
    }
    

提交回复
热议问题