Я занимаюсь некоторыми объектами через Core Data и NSFetchedResultsController
, и я пытаюсь применить к ним условное форматирование на основе одного из своих логических свойств. Если они отмечены как Liked
, я хочу, чтобы их цвет текста был синим, например.Правильный способ установки условного форматирования в UITableViewCell в зависимости от его содержимого?
Проблема, которую я нахожу, заключается в том, что при прокрутке стола больше, чем только с Liked
, так как YES
окрашиваются. Это обычный шаблон, например, каждую шестую запись, когда я прокручиваю вниз. Я думаю, что это как-то связано с очередностью ячейки и повторным использованием, но я понятия не имею, что. Вот мой код:
- (UITableViewCell *) tableView: (UITableView *) tableView cellForRowAtIndexPath: (NSIndexPath *) indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier forIndexPath: indexPath];
Quote *thisQuote = [self.fetchedResultsController objectAtIndexPath: indexPath];
cell.textLabel.numberOfLines = 4;
cell.textLabel.font = [UIFont boldSystemFontOfSize: 12];
cell.textLabel.textAlignment = NSTextAlignmentCenter;
cell.textLabel.text = [[self.fetchedResultsController objectAtIndexPath: indexPath] quote];
if ([[thisQuote isLiked] boolValue]) {
cell.textLabel.textColor = [UIColor blueColor];
}
return cell;
}
Это ма нет никакой разницы. – Luke
Поцарапать, что да, это доступ к NSNumber, а не к его boolValue. Спасибо :) – Luke
Добро пожаловать :) – Bigood