WWLayout
Easy to write auto layout constraints, with minimal extensions to standard namespaces.
Feature Highlights
- Easy to use, readable API
- Backwards-compatible (i.e. pre iOS 11) Safe Area constraints
- Tag constraints to easily switch between different layouts (coming soon)
- Automatic switching of size-class based constraints (coming soon)
Introduction
Constraints are added to a view using the view's layout
property, like so:
myView.layout.width(400)
Multiple constraints are easily added by chaining calls:
myView.layout.width(400).height(200)
A more complicated example:
let container = UIView()
let child = UIView()
container.layout.fill(.safeArea)
child.layout
.fill(container, axis: .x, inset: 20)
.center(in: container, axis: .y, priority: .high)
.top(.lessOrEqual, to: container, offset: 100)
.height(toWidth: 0.5)
Dcumentation
Documentation can be found here
Installation
Swift Package Manager
The WWLayout Package URL is:
https://github.com/ww-tech/wwlayout.git
Add the package dependency to your Xcode project using the File
-> Swift Packages
-> Add Package Dependency...
menu item.
Cocoapods
Simply add WWLayout to your Podfile
:
pod 'WWLayout'
Contributing
Authors
- Steven Grosmark, [email protected]
- WW iOS Team
License
WWLayout is © copyright by WW International.
WWLayout is licensed under the Apache-2.0 Open Source license.