Подтвердить что ты не робот

Как установить edgeForExtendedLayout в none в Swift 3

Проблема заключается в том, что мой View, содержащий UIView и UITableView внутри ScrollView, скрывается под UINavigationBar , если установленный полупрозрачный.

Я рассмотрел несколько потоков, таких как this, но все они предлагают установить:

self.edgesForExtendedLayout = UIRectEdgeNone

В Swift 2 этот код был:

self.edgesForExtendedLayout = .None

Сегодня я обновился до Xcode 8.1 и Swift 3.0.1, но ничего не могу найти в примечаниях к выпуску об этом.

Компилятор сообщает мне, что .None получил изменение на .None, но после редактирования этот .None не существует. Изменение этого параметра на .top не оказало никакого эффекта.

TableView настроен программно, и размещение insets не помогает, потому что у меня есть ScrollView с UIView поверх UITableView, который скрыт под UINavigationBar.

Что мне не хватает? Помощь очень ценится.

4b9b3361

Ответ 1

Установите значение []. Это то же самое, что и никто.

Ответ 2

self.edgesForExtendedLayout = UIRectEdge.init(rawValue: 0)

Ответ 3

Я не знаю, как, но я просто добавить следующий код в моей viewDidLoad() self.navigationController?.NavigationBar.isTranslucent = false И это решает мою проблему.