IOS 通过UITableView上的Button传递参数

在做IOS项目时,经常会碰到需要自定义cell的情况,并且在cell上面有Button,点击Button的时候需要响应事件,这个我们可以需要传递一些参数,但是仅仅通过Button没有办法传递我们的参数,这个时候我们就需要找到承载Button的cell,通过cell传递一些参数。

下面介绍点击自定义的cell上面的Button传递一些参数,首先我们自定义一个cell,在cell中定义一下我们要传递的参数,在这里我们定义一个id,点击button事件的时候我们获取这个id,然后根据这个id去执行相应的操作,在Button点击的事件里面获取cell对象的方法有如下两种方法。


 [cell.btnview addTarget:self action:@selector(viewdetailinfo:) forControlEvents:UIControlEventTouchUpInside];


方法一

-(void)viewdetailinfo:(UIButton *)sender{
    CGRect btnRect=[[sender superview] superview].frame;
    //假设我们自定义的cell时FriendCell
    for(FriendCell *cell in [self.tableview visibleCells])//遍历cell
    {
        CGRect cellframe=cell.frame;
        if(CGRectIntersectsRect(btnRect, cellframe))//通过位置判断cell
        {
            //点击的button所在的cell,可以通过cell获取参数
        }
    }
}

方法二

-(void)viewdetailinfo2:(UIButton *)sender{
    UIView * v=[sender superview];
    FriendCell *cell=(FriendCell *)[v superview];//找到cell
    NSIndexPath *indexPath=[self.tableview indexPathForCell:cell];//找到cell所在的行
}

以上两种方法可以传递cell上面自定义Button点击事件的参数。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值