如何在Swift 3

时间:2016-10-29 03:45:32

标签: ios swift swift3

问题是我的UIView中包含UITableViewScrollView的视图隐藏在UINavigationBar 下,如果设置为半透明

我考虑了几个线程,如this,但他们都建议设置:

self.edgesForExtendedLayout = UIRectEdgeNone

在Swift 2中,这段代码是:

self.edgesForExtendedLayout = .None

我今天已更新到Xcode 8.1和Swift 3.0.1,但我在release notes中找不到关于此事的任何内容。

编译器告诉我,.None已更改为.none,但在编辑后,.none不存在。将其更改为.top没有任何影响。

tableView以编程方式设置,并且insets无效,因为scrollView UIView UITableView位于UINavigationBar之上,隐藏在{QGuiApplicationPrivate::platformIntegration()->fontDatabase()->populateFontDatabase(); 之下1}}。

我错过了什么?非常感谢帮助。

4 个答案:

答案 0 :(得分:113)

将其设为[]。这与没有一样。

答案 1 :(得分:14)

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

答案 2 :(得分:1)

我不知道如何,但是我只是在viewDidLoad()中添加以下代码 self.navigationController?.navigationBar.isTranslucent = false 它解决了我的问题。

答案 3 :(得分:1)

SWIFT 5解决方案

override func viewWillAppear(_ animated: Bool) {
   super.viewWillAppear(animated)

   self.edgesForExtendedLayout = []
}