美文网首页iOS Developer
利用Xib自定义创建cell,拿到控件所在row

利用Xib自定义创建cell,拿到控件所在row

作者: 彭小先生 | 来源:发表于2016-12-20 11:01 被阅读0次

首先说下思想:

假设每个cell都有一个按钮,当我们点击按钮后要对相应的cell进行操作,这样就需要我们拿到IndexPath.row了。然后才能进行操作。

实战:

  1. 我们要拿到每次点击的按钮。(按钮点击事件中我们可以用代理或者块把按钮传到需要的VC上)
    这里用的是Block:
    @property (copy, nonatomic)void(^changeApplyList)(UIButton *);
    然后在按钮响应事件里就可以传值了(添加下面代码):
 if(_changeApplyList)  //判断是否对属性值操作
    {
        self.changeApplyList(sender);
    }

就下来就是接收值了:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    applyTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"123"];
//对块操作  弱应用
    __weak applyListViewController *weakSelf = self;
//拿到按钮
    [cell setChangeApplyList:^(UIButton *sender) {
        [weakSelf changeApplyList:sender];
    }];
    return cell;
}

2.最后就是对传过来按钮操作 拿到所在的cell

-(void)changeApplyList:(UIButton *)sender
{
//这里拿到按钮所在的tableview的cell,一个superview只拿到按钮本身的那个cell。。所以要用两个,如果按钮是在contentview上  需要用三个。。
    UITableViewCell *cell = (UITableViewCell *)[[sender superview] superview];
//根据tableview拿到所在的位置
    NSIndexPath *indexPath = [_friendsView indexPathForCell:cell];
//我这里是对行数进行操作了
    [_nameArray removeObjectAtIndex:indexPath.row];
}

相关文章

  • 利用Xib自定义创建cell,拿到控件所在row

    首先说下思想: 假设每个cell都有一个按钮,当我们点击按钮后要对相应的cell进行操作,这样就需要我们拿到Ind...

  • 5.等高的cell设置

    1.内容大纲: 2.纯代码,添加子控件 项目初始准备: 创建自定义的cell: 3.自定义等高的cell--xib...

  • 如何修改NSLayoutConstraint的multiplie

    因为项目用了xib创建cell,里面的控件约束和cell的宽度有关,然而cell在xib的宽度是固定的,只有显示到...

  • 自定义非等高cell

    非等高cell创建方式1:xib 1.创建自定义类,继承自UITableViewCell,勾选同时创建xib,创建...

  • iOS使用Xib自定义控件

    使用xib自定义一个简单的控件 XMGShopView xib效果图: 运行时效果图: xib自定义控件的创建方法...

  • 等高Cell

    一、自定义Cell1、等高cell 代码 很古老的方法: 利用autoLayout xib加载xib要通过手动加载...

  • iOS中自动调整tableViewCell行高

    iOS中xib创建的cell如何自动调整行高 利用xib创建的cell用于显示用户的评论内容,需求是根据评论内容,...

  • 05-xib创建cell

    1、创建cell 2、在cell.xib中拖入你要的控件,设置约束 3、如需修改控件约束,拖出该约束,设置.con...

  • UICollectionView

    UICollectionView 添加footer 后被遮挡 通过xib 自定义cell 坑 : 拖控件的时候要选...

  • 自定义cell(总结)

    1、自定义注册cell的方式: 1)独立使用xib创建的cell: 2)在tableView中定义的cell,用类...

网友评论

    本文标题:利用Xib自定义创建cell,拿到控件所在row

    本文链接:https://www.haomeiwen.com/subject/plmxvttx.html