のカスタム サブクラスがありUITableViewCell
ます。UILabel
次のように、の外観プロキシのいくつかの属性を設定して、セル内に含まれるラベルをカスタマイズしています。
[UILabel appearanceWhenContainedIn:[UITableViewCell class], nil].textColor = [UIColor blackColor];
[UILabel appearanceWhenContainedIn:[UITableViewCell class], nil].highlightedTextColor = [UIColor redColor];
UI でセルを選択すると、ラベルの色が期待どおりに変化し、コードは次のビュー コントローラーへのプッシュ セグエを実行します。ただし、この新しいView Controllerをポップしてカスタムの画面に戻ると、UITableViewCell
次のようにコードでセルの選択を解除しても、強調表示されたテキストの色が残ります。
- (void)viewDidAppear:(BOOL)animated
{
if ([self.tableView indexPathForSelectedRow]) {
[self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];
}
[super viewDidAppear:animated];
}
これは iOS 7 のバグですか、それとも何か間違っていますか?