我有一個UITableViewController複製行,當我向下滾動。我知道單元格正在被重用,但我似乎無法弄清楚如何解決它。我已經閱讀了其他類似的帖子,無法找出解決方案。UITableViewController複製行?
我在做什麼錯在我的代碼導致重複的單元格?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *cellIdentifier = @"StringTableViewCell";
if (indexPath.row == 0) {
cellIdentifier = @"StringTableViewCell";
} else if (indexPath.row == 1) {
cellIdentifier = @"StringTableViewFooter";
}
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
// Sets up the table view cell accordingly based around whether it is the
// string row or the footer
if (cell) {
if ([cell isKindOfClass:[StringTableViewCell class]]) {
StringTableViewCell *stringCell = (StringTableViewCell *)cell;
// Sets the photos to the array of photo data for the collection view
[stringCell setCollectionData:self.images];
} else if ([cell isKindOfClass:[StringFooterTableViewCell class]]) {
// Sets the table view cell to be the custom footer view
StringFooterTableViewCell *footerCell = [[StringFooterTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"StringTableViewCellFooter"];
// Init's the footer with live data from here
[footerCell setStringUploaderName:@"Name"];
[footerCell setStringUploadDate:@"10 minutes ago"];
[footerCell setStringUploaderProfileImage:[UIImage imageNamed:@"avatar.jpg"]];
[footerCell setCommentButtonTitle:@"4.7k"];
[footerCell setLikeButtonTitle:@"11.3k"];
return footerCell;
}
}
return cell;
}
你能告訴我們你的截圖嗎? – chancyWu
你的代碼只支持兩行單元格。哪些索引路徑應該用於頁腳,哪些索引路徑應該是其他類型? – rmaddy
@rmaddy indexPath.row 0代表第一個單元格,第1行代表頁腳。過去我已經將它放置在特定的位置,正常的單元格或頁腳單元有條件地放在它們各自的行下,但沒有變化。 – Jonathan