在ios编程中为什么会出现在cell上加个lable.通过tag值给lable加值还是会出现复用
发布网友
发布时间:2022-04-30 02:07
我来回答
共3个回答
热心网友
时间:2023-10-03 05:43
需要给每一个cell设置不同的identifier,而不是tag.
重用机制是根据相同的标识符来重用cell的,标识符不同的cell不能彼此重用。于是我们将每个cell的标识符都设置为不同,就可以避免不同cell重用的问题了。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *CellIdentifier = [NSString stringWithFormat:@"Cell_%d_%d", indexPath.section, indexPath.row];//比如以indexPath来唯一确定cell
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; //出列可重用的cell
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
//...其他代码
return cell;
}
热心网友
时间:2023-10-03 05:43
需要给每一个cell设置不同的identifier,而不是tag.
重用机制是根据相同的标识符来重用cell的,标识符不同的cell不能彼此重用。于是我们将每个cell的标识符都设置为不同,就可以避免不同cell重用的问题了。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *CellIdentifier = [NSString stringWithFormat:@"Cell_%d_%d", indexPath.section, indexPath.row];//比如以indexPath来唯一确定cell
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; //出列可重用的cell
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
//...其他代码
return cell;
}
热心网友
时间:2023-10-03 05:43
tag值,分别控制
热心网友
时间:2023-10-03 05:44
通过tag来区分不同lable
热心网友
时间:2023-10-03 05:43
tag值,分别控制
热心网友
时间:2023-10-03 05:44
通过tag来区分不同lable