IB/storyboard are trash (WYSIWYG is so 90s and dragging and poking around a huge visual editor is a huge time sink)
AutoLayout is verbose and complex, even with helper libraries.
It'd be super cool if we could use something like XML with Lima.
IB/storyboard are trash (WYSIWYG is so 90s and dragging and poking around a huge visual editor is a huge time sink)
AutoLayout is verbose and complex, even with helper libraries.
It'd be super cool if we could use something like XML with Lima.
I don't think they can get much shorter than this:
private func addConstraints() {
introduction.attach(sides: [.top, .leading, .trailing], 8.layoutGuideRespecting)
contact
.attach(sides: [.leading, .trailing], 8)
.space(8, .below, introduction)
spinner.center()
error
.attach(sides: [.leading, .trailing], 8)
.space(8, .below, contact)
create.attach(sides: [.top, .bottom, .trailing], 3)
}
And honestly the stuff I needed to do to get CSS working let alone cross-browser until very recently was really not as consistent, clean or predictable as auto layouts. I think you just got used to the suffering.The only thing I really like about CSS is the arbitrary lines you can draw in the sand like "if it gets over 1000px wide then move the menu to the right".
Even stackviews, which was Apple admitting that simple layouts are too verbose to do with AL, are a mess.
Last problem is that everything in Interface Builder still lives apart from the code. I think in Android everything gets compiled and is safe to use from there, with IBOutlets you're always either taking the risk (!) or dealing with optionals everywhere (?)
[0] - https://daringfireball.net/2018/04/scuttlebutt_regarding_ui_...
https://thehackernews.com/2018/06/porting-ios-apps-macos.htm...
[0] - https://mobile.twitter.com/gruber/status/1014490721909444608
[1] - https://mjtsai.com/blog/2018/05/01/scuttlebutt-regarding-app...
There’s a lot of stuff in there though that I ignore because of the issues you mentioned above. If you just keep it to simple constraints it’s great