Ios 表视图中的重复行
我知道也有类似的问题,但它们不适合我 我正在复制我的行,当用户返回任何带有表视图的选项卡时,UILabel的文本变得越来越粗体 以下是CellForRowatineXpath的代码:Ios 表视图中的重复行,ios,uitableview,uilabel,Ios,Uitableview,Uilabel,我知道也有类似的问题,但它们不适合我 我正在复制我的行,当用户返回任何带有表视图的选项卡时,UILabel的文本变得越来越粗体 以下是CellForRowatineXpath的代码: - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { CustomCell *cell = (CustomCell *) [tableView dequ
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
CustomCell *cell = (CustomCell *)
[tableView dequeueReusableCellWithIdentifier:CellClassName];
if (cell == nil)
{
NSArray *topLevelItems = [cellLoader instantiateWithOwner:self options:nil];
cell = [topLevelItems objectAtIndex:0];
}
cell.subnavName.text = [array objectAtIndex:[indexPath section]];
UIImageView *background = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"subnavigation_off.png"]];
[cell setBackgroundView:background];
background = [[UIImageView alloc]
initWithImage:[UIImage imageNamed:@"subnavigation_on.png"]];
cell.selectedBackgroundView = background;
[background release];
return cell;
}
当用户从另一个选项卡返回此选项卡时,如何避免UILabel中的文本再次添加到我的单元格中?我读了一些关于使用标签的内容,但我找不到方法
多谢各位 sooooooo经典错误 问题(与这里的TableView问题一样)在于您没有正确使用TableViewCells的重用机制 您应该尝试退出(回收)现有单元格,如果它没有返回单元格(tableview没有回收旧的(已分配但不再使用的)单元格),则分配它并配置所有单元格共有的每个属性(标签字体、添加子视图、更改颜色等) 然后,在“if”之外——不管该单元格是新分配的单元格还是已回收的单元格(从以前分配但不再使用的单元格中回收),在所有情况下——使用依赖于indexPath的特定内容(文本、图像等)填充该单元格
阅读Apple文档中的Table View编程指南,并搜索StackOverflow。关于TableView,有很多问题都有相同的问题。我更改了它,但它仍然不起作用,您能编辑我上面的代码吗?我没有看到你上面的代码有任何修改。例如如何实现这一点,搜索StackOverflow关于
UITableView
,有很多关于如何实现tableView:cellForRowAtIndexPath:
和这个if
分支的代码示例,我自己在这里解释了很多次。好的,我在我的应用程序代码中更改了,不是在那里。刚刚编辑。谢谢:)WTF?!为什么所有这些无用的代码?一个for循环,用于查找i
的哪个值等于indepath.section
,而不是直接使用indepath.section
?!在background
变量中指定的第一幅图像上也有漏洞。。。“仍在工作”不是诊断。没有更多细节,无法帮助。一定要在代码中设置断点,并一步一步地进行调试(或NSLog),这样对您来说应该更清楚。如果您不修改我的代码,那么我将学习如何以正确的方式进行调试,而无需再次询问?谢谢你的帮助。对不起,我不是你那么好的程序员。我肯定你生来就不会编程。