大家在做程序的时候,可能会遇上一种情况,需要遍历tableview中所有cell,并分别给cell中的控件赋值,或者修改他的属性。例如,在做网购程序的购物车中,都会有全选这个按钮,单击全选就会将所有cell中的小得勾选按钮设置成被选中的状态,从而该变他的状态和图片。
但是问题也没那么简单,XCODE并允许开发者直接获取所有的tableViewCell,这时候我们用遍历的方法来获取cell也只能获得visbleCells这个属性,也是就当前页面所显示的cell,我们先看看代码:
- (IBAction)btnAction:(UIButton*)sender {
//获取可见cells
visibleCells = visibleTableView.visibleCells;
for (UITableViewCell *cell in visibleCells) {
//cell中需要处理函数或属性
}
}
这样的话只能获取当前页面显示的cell,但是这样一来一旦拉动tableview其他没有显示的cell根本不会处于选中状态,这种方法只适合小范围的修改和变动。当然我们可以通过
//只返回当前不可见的cell
– (UITableViewCell *)dequeueReusableCellWithIdentifier:(NSString *)identifier
这个方法来获取不显示的cell,我个人是不推荐的,考虑到talbleview的复用机制,我们即使是赋值了一次,当我们再次拖动tableview的时候,来回来一看,刚设置的属性全都回到解放前了,那怎么办了。
办法当然是有的,那就是定义一个可变的数组NSMutableArray,将其中需要用到的属性用bool 或者0,1的方式存储起来,并且在tableviewcell初始化方法中,用判断的方式,来加载所需要变动的属性,这样tableview不论他如何的复用,我的数组始终不会被销毁,一直控制着变量。
荒野乱斗国际版 (BrawlStars)最新版本v56.274
下载一波超人内置修改器菜单版 安卓版v1.0.2
下载敢达决战官方正版 安卓版v6.7.9
下载敢达决战 安卓版v6.7.9
下载继承了一座戏园子无限声望铜钱版 内置菜单最新版v1.7
继承了一座戏园子折相思版是游戏的破解版本,在该版本中为玩家提
山河半世橙光清软金手指版 无限鲜花v3.24
山河半世是一款超级好玩的橙光恋爱游戏,在游戏中玩家们需要扮演
蓬莱手游折相思版 安卓版v1.0.0
蓬莱免广告版是游戏的修改版本,在该版本中为玩家去除了广告,玩
当红影后橙光游戏破解版2025 最新版v1.0
当红影后橙光破解版是一款超级好玩的娱乐圈题材的橙光游戏,在这
忽然成了万人迷清软完结版 无限鲜花版v12.15
忽然成了万人迷破解版是一款非常好玩的男性向橙光游戏,在有一天