Я не могу изменить цвет фона статического UITableViewCells на iOS 7 при работе на iPad-устройстве. Вы можете легко проверить это с помощью следующей настройки:
- Создайте новый универсальный проект в Xcode 5 с двумя раскадными версиями.
- В каждом раскадровке поместите только один контроллер контроллера таблицы и установите его как начальный.
- Поместите несколько (например, 3) статических ячеек в представление таблицы в обоих контроллерах/раскадровках.
- Установите цвет фона каждой статической ячейки в разные цвета в Interface Builder (я использую красные, зеленые и четкие цвета).
Теперь запустите приложение на iPhone и iPad-симуляторах (iOS 7).
На симуляторе iPhone все в порядке,
в то время как на симуляторе iPad все ячейки окрашены в белый цвет.
Я попытался заставить iPad работать правильно, установив свойства среды выполнения в Interface Builder для ячеек:
-
backgroundColor
для очистки цвета -
contentView.backgroundColor
для очистки цвета -
backgroundView
в nil
но ничего не помогает. Фактически, установка свойства времени выполнения contentView.backgroundColor
изменит цвет ячейки, но не работает с четким цветом (это означает, что за ним стоит другое изображение, окрашенное в белый цвет).
Очень странно, что два устройства в одной версии iOS дают разные результаты. Может ли кто-нибудь еще подтвердить эту ошибку?
У кого-нибудь есть решение этой проблемы, или единственный способ перейти на динамические свойства + установить цвет в cellForRowAtIndexPath
? Я хотел бы использовать статические ячейки, потому что характер проблемы статический.
p.s. Я просто понял, что забыл попробовать установить свойство backgroundView.backgroundColor
runtime, чтобы очистить цвет, и у меня нет доступа к Mac на данный момент. Может быть, это будет трюк.