Ответ 1
Каждый UIImageView
имеет свойство tintColor
на iOS7 +
Попробуйте установить ячейку imageView.image.renderingMode
на UIImageRenderingModeAlwaysTemplate
в раскадровке User Defined Runtime Attributes
У меня есть UITableView
, который состоит из статических ячеек. В IB я установил каждый стиль UITableViewCell
в "Basic" и установил изображение (см. Снимок экрана). Кнопки в моем навигационном баре почитают свойство tintColor
, но изображения в таблице нет. До сих пор я делал все в IB - мне нужно использовать код, если я хочу, чтобы изображения также чтили свойство tintColor
?
Спасибо
Каждый UIImageView
имеет свойство tintColor
на iOS7 +
Попробуйте установить ячейку imageView.image.renderingMode
на UIImageRenderingModeAlwaysTemplate
в раскадровке User Defined Runtime Attributes
Какая головная боль эта проблема возникает после стольких версий! Единственное, что является верным исправлением ошибки, если все правильно (образ шаблона и т.д.), Подклассифицирует UIImageView и переопределяет doMoveToSuperview с этим...
- (void)didMoveToSuperview
{
[self setHighlighted:YES];
[self setHighlighted:NO];
[super didMoveToSuperview];
}
Это взлом, но он работает.
Вот пример:
UIImage *image = [[UIImage imageNamed:@"ic_email_white"]
imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
[[cell imageView] setImage:image];
[[cell imageView] setTintColor:[UIColor redColor]];
Приведенная ниже настройка работала для меня хорошо.
В раскадровке установите ячейку contentView
tintColor
качестве желаемого цвета и UIImagview
tintColor
по default
.