contentInsetAdjustmentBehavior 从未设置
contentInsetAdjustmentBehavior is never set
我正在尝试为 ViewController
的 viewDidLoad()
中的 UITableView
设置 contentInsetAdjustmentBehavior == .never
,但是它被忽略了,无论我是否这样做以编程方式或通过 InterfaceBuilder。
这是我得到的。图片是TableView的header.
我的导航栏在上面,顺便说一句,它是透明的。
我希望 Header 的图像是这样的
感谢您的帮助。谢谢
设置imageView的topConstraint常量为-64
- 为 imageView 的 topConstraint 创建一个 Outlet
声明一个变量topPadding(对于iPhone X)
@IBOutlet weak var topConstraint: NSLayoutConstraint!
var topPadding:CGFloat = 0.0
并在viewDidload中使用下面的代码
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController!.navigationBar.setBackgroundImage(UIImage(), for: .default)
self.navigationController!.navigationBar.shadowImage = UIImage()
self.navigationController!.navigationBar.isTranslucent = true
topConstraint.constant = -64
if #available(iOS 11.0, *) {
let window = UIApplication.shared.keyWindow
topPadding = (window?.safeAreaInsets.top)!
topConstraint.constant = -(64+topPadding)
}
}
我正在尝试为 ViewController
的 viewDidLoad()
中的 UITableView
设置 contentInsetAdjustmentBehavior == .never
,但是它被忽略了,无论我是否这样做以编程方式或通过 InterfaceBuilder。
这是我得到的。图片是TableView的header.
我的导航栏在上面,顺便说一句,它是透明的。
我希望 Header 的图像是这样的
感谢您的帮助。谢谢
- 为 imageView 的 topConstraint 创建一个 Outlet
声明一个变量topPadding(对于iPhone X)
@IBOutlet weak var topConstraint: NSLayoutConstraint! var topPadding:CGFloat = 0.0
并在viewDidload中使用下面的代码
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController!.navigationBar.setBackgroundImage(UIImage(), for: .default)
self.navigationController!.navigationBar.shadowImage = UIImage()
self.navigationController!.navigationBar.isTranslucent = true
topConstraint.constant = -64
if #available(iOS 11.0, *) {
let window = UIApplication.shared.keyWindow
topPadding = (window?.safeAreaInsets.top)!
topConstraint.constant = -(64+topPadding)
}
}