我如何保护UITableViewCell的文本,当滚动UITableView时会更改它。
static NSString *CellIdentifier = @"Cell";
CustomTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(indexPath.row != [destinationList count])
{
if (cell == nil)
{
cell = [[CustomTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell.customLable.text = @"MyCustomLabel";
else
{
if (cell == nil)
{
cell = [[CustomTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell.textLabel.text = @"Static Text to be set";
[cell.customLable removeFromSuperview];
}
问题:每次滚动UITableView时,@“要设置的静态文本”在@“ MyCustomLabel”上被覆盖。
我该如何预防?我希望UITableView的所有单元格都可以通过Table的LifeTime保留其TextLabel。
最佳答案
两个可能的答案:
通常,这并不重要。重用该单元是应该的工作方式,您应该每次都完全“重置”每个单元。无论如何,您都不应该在单元格中存储状态
创建一个新的reuseIdentifier,一个用于自定义标签,另一个用于静态文本