CompatibleLayoutAnchors 2.0.2

CompatibleLayoutAnchors 2.0.2

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布最新发布2018年4月
SPM支持 SPM

Lukas Wuerzburger 维护。



  • Truffls GmbH

alt text

Swift Version Platform Compatibility Pod version

一种简单的方法,可以同时支持 iOS 11 的安全区域锚点和 iOS <= 10 的顶部/底部布局指南。CompatibleLayoutAnchors 移除了检查要使用哪些布局锚点的样板代码。

问题

如果您使用 iOS 11 的安全区域和 NIBs 作为界面,iOS <= 10 时的回退约束将回退到父视图的锚点,而不是顶部/底部布局指南。

在常规工作流程中,您会设置 nib,并在 Interface Builder 中看起来很好。

alt text

但在 iOS <= 10 上看起来是破损的。

实际 期望
alt text alt text

通过 Cocoapods 安装

将以下内容添加到您的 Podfile

use_frameworks!
pod 'CompatibleLayoutAnchors'

如何使用

您已有待在 NIB 文件中的布局的所有布局约束。在您的视图控制器中引用与安全区域顶部锚点连接的顶部约束和与安全区域底部锚点连接的底部约束。使用 assignCompatibleConstraint(_:for:) 重新分配合适的约束。

assignCompatibleConstraint(&myTopConstraint, for: .top)

示例

此代码与上方截图相符。

class ViewController: UIViewController {

    @IBOutlet weak var headlineLabelTopConstraint: NSLayoutConstraint!
    @IBOutlet weak var footnoteLabelBottomConstraint: NSLayoutConstraint!

    override func viewDidLoad() {
        super.viewDidLoad()

        assignCompatibleConstraint(&headlineLabelTopConstraint, for: .top)
        assignCompatibleConstraint(&footnoteLabelBottomConstraint, for: .bottom)
    }
}

贡献

欢迎提交问题和拉取请求!