iOS 11 safe area layout guide backwards compatibility

前端 未结 16 1125
忘了有多久
忘了有多久 2020-12-02 05:42

Is enabling Safe Area Layout Guides compatible to iOS below 11?

16条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-02 06:22

    Here is my iOS 9 to iOS 11+ solution wrapper in swift 4+

        let safeAreaTopAnchor:NSLayoutYAxisAnchor?
        if #available(iOS 11.0, *) {
            safeAreaTopAnchor = contentView.safeAreaLayoutGuide.topAnchor
        } else {
            // Fallback on earlier versions
    
            var parentViewController: UIViewController? {
                var parentVCResponder: UIResponder? = self
                while parentVCResponder != nil {
                    parentVCResponder = parentVCResponder!.next
                    if let viewController = parentVCResponder as? UIViewController {
                        return viewController
                    }
                }
                return nil
            }
    
            safeAreaTopAnchor = parentViewController?.topLayoutGuide.bottomAnchor
    
        }
    

提交回复
热议问题