我有一个tableview,我想填写一些推文。我有一个textview用于填充每个tableview单元格中的推文内容。然而,这篇文章观点正在被覆盖。有人可以查看下面的代码,如果我犯了任何错误,请告诉我吗?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"FeedCell" forIndexPath:indexPath];
NSDictionary *tweet = tweetArray[indexPath.row];
NSString *tweetText = tweet[@"text"];
CGSize stringSize = [tweetText sizeWithFont:[UIFont boldSystemFontOfSize:15] constrainedToSize:CGSizeMake(320, 9999) lineBreakMode:UILineBreakModeWordWrap];
textV=[[UITextView alloc] initWithFrame:CGRectMake(5, 5, 290, stringSize.height+5)];
textV.font = [UIFont systemFontOfSize:15.0];
textV.text = tweetText;
textV.textColor = [UIColor blackColor];
textV.editable = NO;
[cell.contentView addSubview:textV];
return cell;
}
答案 0 :(得分:0)
你有很少的推文,而不是去除(即重新使用单元格),创建新的单元格。使用以下代码:
UITableViewCell *cell = (UITableViewCell*)[tableView dequeueReusableCellWithIdentifier:nil];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];
}
NSDictionary *tweet = tweetArray[indexPath.row];
NSString *tweetText = tweet[@"text"];
CGSize stringSize = [tweetText sizeWithFont:[UIFont boldSystemFontOfSize:15] constrainedToSize:CGSizeMake(320, 9999) lineBreakMode:UILineBreakModeWordWrap];
textV=[[UITextView alloc] initWithFrame:CGRectMake(5, 5, 290, stringSize.height+5)];
textV.font = [UIFont systemFontOfSize:15.0];
textV.text = tweetText;
textV.textColor = [UIColor blackColor]; textV.editable = NO;
[cell.contentView addSubview:textV];
return cell;
}
希望它有所帮助。