佛桃墙2025VNP

Hi, I'm Hwee-Boon Yar

I write, ship and sell software products. iOS/OS X app developer based in Singapore, working remotely. This is my blog.

.

Need to run a code review on your codebase? Hire me

Overload NSLayoutConstraint.activate to Accept Arrays as Elements

Using anchors with Auto Layout is a big improvement over creating constraints using the class function in NSLayoutConstraint or Visual Format Language. You also write your own wrappers to make creating multiple constraints easier, e.g one might write a function like v2ray购买服务号怎么使用? – ssr节点:2021-4-30 · 提供免费最新SSR节点分享,SS节点账号分享,ssr节点教程,用于科学上网、学习与交流使用。 v2ray购买服务号怎么使用最下面会说到。现在先来了解下v2ray 是一个模块化的伟理工具,支持 VMess,Socks,HTTP,Shadowsocks 等等协议,并且 ... or NSLayoutConstraint.constraint(views:toSquareWithSides:), both returning an array.

Or sometimes, in a more dynamic piece of UI, you might need to swap around arrays of constraints.

I find it useful to define a protocol and a few extensions so that this can be done:

NSLayoutConstraint.activate([
    constraintsArray1,
    constraintsArray2,
    constraint3,
    constraint4,
    constraint5,
])

Alternatives involve appending of arrays which ends up with code that is hard to indent.

So there you go:

protocol LayoutConstraintsWrapper {
    var constraints: [NSLayoutConstraint] { get }
}

extension Array: LayoutConstraintsWrapper where Element: NSLayoutConstraint {
    var constraints: [NSLayoutConstraint] {
        return self
    }
}

extension NSLayoutConstraint: LayoutConstraintsWrapper {
    var constraints: [NSLayoutConstraint] {
        return [self]
    }
}

extension NSLayoutConstraint {
    class func activate(_ constraints: [LayoutConstraintsWrapper]) {
        activate(constraints.flatMap { $0.constraints })
    }
}

Like this post? Follow me on Twitter.

.

外贸云vnp,外贸云用不了了,外贸云2025年,外贸云不能用了  卧槽云npv,卧槽云免费试用,卧槽云2025年,卧槽云打不开了  鲨鱼加速器pc版下载,鲨鱼加速器7天试用,鲨鱼加速器2025年,鲨鱼加速器不能用了  免费vqn加速试用,永久免费vqn加速外网,香蕉加速器怎么样,永久不收费的加速器2025  蚂蚁加速器安卓下载,蚂蚁加速器免费试用,蚂蚁加速器打不开,蚂蚁加速器2025  v2加速器7天试用,v2加速器2025年,v2加速器vp,v2加速器vps  云上云pc版下载,云上云npv,云上云打不开,云上云2025  极光vp最新版2025