An open API service indexing awesome lists of open source software.

https://github.com/ww-tech/wwlayout

Swifty DSL for programmatic Auto Layout in iOS
https://github.com/ww-tech/wwlayout

auto-layout auto-layout-code auto-layout-programmatically autolayout autolayout-constraints autolayout-framework constraints ios layout swift

Last synced: 8 months ago
JSON representation

Swifty DSL for programmatic Auto Layout in iOS

Awesome Lists containing this project

README

          


WWLayout


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:

```swift
myView.layout.width(400)
```

Multiple constraints are easily added by chaining calls:

```swift
myView.layout.width(400).height(200)
```

A more complicated example:

```swift
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](//ww-tech.github.io/wwlayout/)

## 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](https://github.com/g-mark), steven.grosmark@ww.com
* WW iOS Team

## License
WWLayout is © copyright by WW International.

WWLayout is licensed under the [Apache-2.0 Open Source license](http://choosealicense.com/licenses/apache-2.0/).