我有一个以编程方式显示内容的 UITableView。
首次打开时单元格加载正常,但滚动后它们都显示相同的标题,我假设这是最后一个单元格标题。
如果选择了单元格,则打开的底层 TableView 仍然可以正常工作。
我在 SO 上查找了解决方案,但它们要么对我不起作用,要么我太笨而无法理解问题,这似乎是为了某种节省资源而重用单元格。
我将发布 cellForRowAtIndexPath ,因为我认为问题就在那里,如果需要任何进一步的代码,请告诉我。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
NSString *oneLine = [entrys objectAtIndex:position];
NSArray *lineComponents = [oneLine componentsSeparatedByString:@";"];
cell.textLabel.text = [lineComponents objectAtIndex:0];
cell.textLabel.textColor = [UIColor colorWithRed:0.0 green:0.8 blue:0.2 alpha:1.0];
if (position < [entrys count] -2 ) {
position++;
}
return cell;
}
提前致谢