我在 iPad 上有 UITableView。当一个单元格被选中并且该单元格被滚动出屏幕,然后又滚动回到屏幕中时,被选中的单元格是空白的。我的问题只发生在设备上,而不是模拟器上。我尝试了各种建议的解决方案,例如管理选定的索引
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
self.selectedIndexPath = indexPath;
}
并在 cellForRowAtIndexPath 上使用 setSelected/selectRowAtIndexPath
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Desktop Row";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell =[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
...
if(self.selectedIndexPath!=nil){
if ((indexPath.row == self.selectedIndexPath.row) && (indexPath.section == self.selectedIndexPath.section)) {
[self.tableView selectRowAtIndexPath:self.selectedIndexPath
animated:YES
scrollPosition:UITableViewScrollPositionNone];
}
}
return cell;
}
但没有任何效果,我看到人们问的问题非常相似,但我有一些不同的和奇怪的东西。
任何想法将不胜感激。