テーブルビューでセルを作成するときに次のコードを実行しました
- (void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath
{
Medicine *medicine = [self.fetchedResultsController objectAtIndexPath:indexPath];
if ([medicine isDue] == 1)
{
[cell setBackgroundColor:[self dueColour]];
NSLog(@"Due");
}
else if([medicine active] == [NSNumber numberWithInt:0])
{
[cell setBackgroundColor:[self inactiveColour]];
NSLog(@"Inactive");
}
else
{
[cell setBackgroundColor:[UIColor whiteColor]];
NSLog(@"Active");
}
[[cell textLabel] setText:[medicine name]];
[[cell detailTextLabel] setText:[NSString stringWithFormat:@"Next Due: %@",[medicine nextDueDate]]];
}
これは問題ありませんが、問題またはアクティブなプロパティを変更すると、新しいセルの色が得られると期待していますが、新しいセルの色が得られますが、古い色がテキストのハイライトとして表示され、わかりませんどうして。期日と有効な薬を印刷するときのように、正しい色が割り当てられていることを知っています
2013-09-17 23:05:28.121 薬トラッカー[11611:907] 2013-09-17 期限
23:05:28.124 Medicine Tracker[11611:907] アクティブ
これは正しいですが、間違った色が指定されています
私が何を意味するかをよりよく示すかもしれない画像があります