2015-05-07 3 views
0

Я занимаюсь обновлением старого приложения с XCode 4.6 до 6.3 и столкнулся с различием в том, как мои пользовательские ячейки представления таблицы отображаются между iOS 6 и iOS 8 (хорошо это изменение можно увидеть и в iOS 7).Различия в рендеринге UITableView между iOS 6 и iOS 8

Вот 2 снимки экрана из Xcode 4.6/Ios 6.1 имитатора:

enter image description hereenter image description here

Вот эквивалент Xcode 6.3/Ios 8.1 Имитатор:

enter image description hereenter image description here

(Как background, экран Preferences - это сгруппированный UITableView с 3 группами и 1 элемент на группу. Экран Units - это односекционный UITableView с 3-мя элементы. И «Примечание» на изображении «Единицы» - просто вид)

Разница, которую я не ожидал (и не люблю), заключается в том, что в iOS 8 пользовательские ячейки таблицы расширялись горизонтально, чтобы покрыть весь ширину экрана, а также потеряли закругленные углы.

Я искал, чтобы узнать, может ли я сделать версию iOS 8.1 более похожей на версию 6.1, но до сих пор не удалось.

Можно ли легко вернуть макет, который я хочу? И если да, то где я должен искать изменения?

+0

Изменения начались с iOS 7.0. Люди ожидают этого сейчас. Обнимите его, не сражайтесь с ним. – rmaddy

+0

@maddy Итак, вы говорите, что это «Нет» на мой вопрос? –

ответ

1

Один из возможных подходов - установить tableView.backgroundColor и contentView.backgroundColor пользовательских сокетов на clearColor (это также можно сделать с помощью интерфейса-интерфейса). Затем добавьте фоновый вид в пользовательскую ячейку. Вы можете дать ему закругленные углы и добавить вокруг него пространство.

Transparent table view in the interface builder

Это то, что он выглядит во время исполнения (синий фон принадлежит к виду позади tableView): Custom transparent cells at runtime.

Это более сложно, хотя, когда мы имеем дело с группой клеток на ваш правый скриншот. Там первая ячейка должна иметь закругленные углы сверху, последний должен иметь закругленные углы внизу, а средний не должен иметь закругленных углов. Я думаю, это можно сделать (вы можете с учетом индексации учитывать при настройке ячейки), но это требует немного больше работы.

P.S. Прошу прощения за размер изображений. Я не знаю, как его ограничить.

Смежные вопросы