Slot-based UI development in Swift
swiftbysundell.com
swiftbysundell.com
I hope that Apple one day takes inspiration from Sundell's "Autolayout DSL" and comes up with a more lightweight syntax!
label.topAnchor.constraint(equalTo: button.bottomAnchor, constant: 20),
and: $0.top == button.bottomAnchor + 20
(Sundell's first example), I'm not seeing a 'nightmare'. It's twice as long but it still fits on one line (the way I format it), and it's only a linear problem (2N vs N), and it only occurs for a few lines of one method of some classes. For people who care, it's possible to write extensions (as Sundell does) to solve it.There's definitely abstractions that are nightmarish to try to build in Swift and AppKit/UIKit, but I don't think this is one of them.
What would those be? Genuinely curious.
Something like:
make.left.equalTo(foo.right).offset(15)
make.width.equalTo(400)