如何在滚动时避免在tableview ios中刷新单元格标签?

时间:2016-03-17 11:34:12

标签: ios objective-c uitableview

通常在iOS中,tableview中的单元格在滚动时加载。在这个时候我正在设置标签文本。在这种情况下,我正在动态设置此文本。当我向下滚动时,它正如我预期的那样工作。但是当它向上滚动时,它没有按预期工作。这就是我的尝试。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"moduleCell";

    DateTableViewCell *cell = (DateTableViewCell*)[tableView dequeueReusableCellWithIdentifier: CellIdentifier];
    if (cell == nil) {
        NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"DateTableViewCell" owner:self options:nil];
        cell = [nib objectAtIndex:0];

        cell.backgroundColor = [UIColor clearColor];
        cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@""]];
        cell.selectionStyle = UITableViewCellSelectionStyleNone;

    }
    if (self.newsSegmentControl.selectedSegmentIndex == 1) {
        [cell.dateView setHidden:NO];
    }else{
        [cell.dateView setHidden:YES];
    }
    NSString *day = [self getDayLabel:date];
    if ([dateReturned isEqualToString:day]) {
        [cell.lblDate setText:@""];
        if (self.newsSegmentControl.selectedSegmentIndex == 1) {
            [cell.dateView setHidden:YES];
        }
    }else{
        [cell.lblDate setText:day];
        dateReturned = day;
    }
}

如何在滚动时避免在单元格中重新绘制标签文本?

0 个答案:

没有答案