TDBadgedCell продолжает кэшировать BadgeNumber - PullRequest
0 голосов
/ 04 февраля 2010

Для проекта, над которым я работаю, я использую TDBadgedCell, написанный Тимом Дэвисом. В то время как ячейка работает нормально по большей части, BadgeNumber продолжает кэшироваться. Мне интересно, как я могу это исправить.

Мое сообщение [tableView: cellForRowAtIndexPath] выглядит так:

- (UITableViewCell *)tableView:(UITableView *)_tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"Cell";
    TDBadgedCell *cell = (TDBadgedCell *)[_tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    Contact *contact = [contactArray objectAtIndex:[indexPath row]];

    if (cell == nil) {
        cell = [[TDBadgedCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
        [cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
    }

    [cell setBadgeNumber:[[contact unreadMessageCount] intValue]];

    UIImage *statusImage = nil;
    if ([[contact status] isEqualToString:@"online"]) {
            statusImage = [[StatusController sharedInstance] imageForStatus:Online];
    } else if ([[contact status] isEqualToString:@"away"]) {
            statusImage = [[StatusController sharedInstance] imageForStatus:Away];  
 }

    [[cell imageView] setImage:statusImage]; 

    NSString *displayName = [contact displayName];
    [[cell textLabel] setText:displayName];

    NSString *phone = [contact phone];
    [[cell detailTextLabel] setText:phone];

    [cell setBadgeNumber:[[contact unreadMessageCount] intValue]];

    return cell;
}

Текст и изображение корректно перерисовываются при прокрутке вверх и вниз. Badgenumber не однако. Любые предложения о том, как это исправить, будут приветствоваться.

1 Ответ

0 голосов
/ 21 февраля 2010

Попробуйте вызвать «setNeedsDisplay» для ячейки после того, как вы установили badgeNumber, чтобы заставить ячейку перерисовываться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...