[iOS tableViewCell 复用] xib自定义cell 修改cell中按钮状态 出现按钮状态被复用
来源:互联网 发布:淘宝卖面膜怎么样 编辑:程序博客网 时间:2024/05/22 03:30
最近脑子秀逗了
最近开始手写购物车,在自定义tableviewcell之后,在自定义的cell中添加一个可以选中的按钮,啥也没想就去register 然后设置代理,在vc中去修改按钮状态 btn.selected = !btn.selected
然后去看效果啊,恩 cell 的第一个被选中了, 然后往下一拉,screen外面的一个cell上的按钮状态 也是处于被选中状态,哭
下面是百度来的办法, 个人感觉第一个不咋地 btn就是要能复用才有意思么
网络方法一:http://www.cocoachina.com/bbs/read.php?tid-212837-page-2.html不要在cell里面创建btn,在调用UITableView之前,将btn创建好,然后在生成cell的时候,再将btn添加到cell的contentView上面,这样就不会出现复用的问题网络方法二:http://www.cocoachina.com/bbs/read.php?tid-1687855.html解决办法:cell 添加一个外部property@property (nonatomic) BOOL isSelect;需要在cell中重写layoutsubviews方法在其中,根据你的isSelect设置你的button状态 三:http://www.cocoachina.com/bbs/read.php?tid-1483416.html四:http://www.cocoachina.com/bbs/read.php?tid=1486063
后来自己回想了下 现在
记录一下 解决办法
1.自定义cell中有按钮,cell肯定是要被复用的
2.处理的核心是,在cell 的 btn的代理方法中, 修改其model中的isSelected (BOOL) 属性
3.reloadData 刷新
贴代码:
1.在自定的cell中使用model来修改按钮状态:
- (void)setModel:(JFShopCarModel *)model{ _model = model; _chooseBtn.selected = model.isSelected;}
2.在控制器中 实现代理方法 并刷新tableview
#pragma mark - CarBuyListDelete-(void)chooseBtnClickDelegate:(UIButton *)btn model:(JFShopCarModel *)model{ // if ([self.selectedShopArray containsObject:model]) { [self.selectedShopArray removeObject:model]; model.isSelected = NO; } else{ [self.selectedShopArray addObject:model]; model.isSelected = YES; } [_tableShowView reloadData];}
0 0
- [iOS tableViewCell 复用] xib自定义cell 修改cell中按钮状态 出现按钮状态被复用
- iOS自定义按钮删除Cell
- iOS--xib自定义cell
- iOS ---xib自定义cell
- 自定义TableViewCell上的按钮-找到cell行数
- xib取消cell选中状态
- iOS 8自定义cell的删除按钮
- 自定义Cell中按钮的点击事件
- UITableView Cell上添加按钮后改变选择状态
- Xib使用之TableViewCell.xib中创建多个Cell
- Xib使用之TableViewCell.xib中创建多个Cell
- IOS 取消表格单元格 TableViewCell 去掉高亮状态 点击Cell取消选择状态
- IOS中xib+代码实现自定义cell中嵌套
- 自定义cell,tableviewcell
- iOS 自定义cell侧滑删除、编辑等按钮
- iOS 自定义Cell按钮的点击代理事件
- iOS 一一 自定义cell按钮的点击事件(代理)
- iOS 一一 自定义cell按钮的点击事件(通知机制)
- msg_port_full
- RPC
- gdb调试C/C++程序
- hdu 1166 敌兵布阵 区间和
- Eclipse在使用Jface关于org.eclipse.core.runtime包导入之后项目依然报错的问题
- [iOS tableViewCell 复用] xib自定义cell 修改cell中按钮状态 出现按钮状态被复用
- java代码使用ftp上传图片失败的一个问题
- 正确方法将电子书放到Kindle的documents文件夹,还是看不了书?
- 媒体捕捉 - AVCaptureSession
- ubuntu14.04中更改python版本
- java基础--24.多线程的应用--电影院卖票程序的实现
- H5移动应用的发布优化(二)JS/CSS优化
- css三角
- [LeetCode]37. Sudoku Solver