Skip to content

kgn/KGNAutoLayout

Repository files navigation

KGNAutoLayout

KGNAutoLayout makes AutoLayout easy!

Swift 3 Release License

Build Status Test Coverage Carthage Compatible CocoaPods Version CocoaPods Platforms

Twitter Follow Star

Installing

Carthage

github "kgn/KGNAutoLayout"

CocoaPods

pod 'KGNAutoLayout'

Examples

Example App

Example App

Pin: Superview

view.pinToEdgesOfSuperview(offset: 20)

pinToEdgesOfSuperview_offset20

view.pinToTopEdgeOfSuperview(offset: 20)

pinToTopEdgeOfSuperview_offset20

view.pinToRightEdgeOfSuperview(offset: 20)

pinToRightEdgeOfSuperview_offset20

view.pinToBottomEdgeOfSuperview(offset: 20)

pinToBottomEdgeOfSuperview_offset20

view.pinToLeftEdgeOfSuperview(offset: 20)

pinToLeftEdgeOfSuperview_offset20

view.pinToSideEdgesOfSuperview(offset: 20)

pinToSideEdgesOfSuperview_offset20

view.pinToTopAndBottomEdgesOfSuperview(offset: 20)

pinToTopAndBottomEdgesOfSuperview_offset20

Pin: Edges

view.pinTopEdgeToTopEdge(ofItem: itemView, offset: 20)

pinTopEdgeToTopEdgeOfItem_offset20

view.pinRightEdgeToRightEdge(ofItem: itemView, offset: 20)

pinRightEdgeToRightEdgeOfItem_offset20

view.pinBottomEdgeToBottomEdge(ofItem: itemView, offset: 20)

pinBottomEdgeToBottomEdgeOfItem_offset20

view.pinLeftEdgeToLeftEdge(ofItem: itemView, offset: 20)

pinLeftEdgeToLeftEdgeOfItem_offset20

Center

view.centerInSuperview()

centerInSuperview

view.centerHorizontallyInSuperview()

centerHorizontallyInSuperview

view.centerVerticallyInSuperview()

centerVerticallyInSuperview

parentView.centerHorizontally(views: [view1, view2, view3], separation: 20)

centerViewsHorizontally_separation20

parentView.centerVertically(views: [view1, view2, view3], separation: 20)

centerViewsVertically_separation20

view.centerHorizontally(toItem: itemView)

centerHorizontallyToItem

view.centerVertically(toItem: itemView)

centerVerticallyToItem

Size

view.size(toWidth: 80)

sizeToWidth80

view.size(toMinWidth: 40)

sizeToMinWidth40

view.size(toMaxWidth: 100)

sizeToMaxWidth100

view.size(toHeight: 80)

sizeToHeight80

view.size(toMinHeight: 40)

sizeToMinHeight40

view.size(toMaxHeight: 100)

sizeToMaxHeight100

view.size(toWidthAndHeight: 80)

sizeToWidthAndHeight80

view.size(toMinWidthAndHeight: 40)

sizeToMinWidthAndHeight40

view.size(toMaxWidthAndHeight: 100)

sizeToMaxWidthAndHeight100

view.sizeWidthToWidth(ofItem: itemView)

sizeWidthToWidthOfItem

view.sizeHeightToHeight(ofItem: itemView)

sizeHeightToHeightOfItem

view.sizeHeightToWidth(ofItem: itemView)

sizeHeightToWidthOfItem

view.sizeWidthToHeight(ofItem: itemView)

sizeWidthToHeightOfItem

view.sizeWidthAndHeightToWidthAndHeight(ofItem: itemView)

sizeWidthAndHeightToWidthAndHeightOfItem

view.sizeHeightToWidth(withAspectRatio: 16/9)

sizeHeightToWidthAspectRatio16by9

view.sizeWidthToHeight(withAspectRatio: 16/9)

sizeWidthToHeightAspectRatio16by9

Position

view.positionAbove(item: itemView, offset: 20)

positionAboveItem_offset20

view.positionToTheRight(ofItem: itemView, offset: 20)

positionToTheRightOfItem_offset20

view.positionBelow(item: itemView, offset: 20)

positionBelowItem_offset20

view.positionToTheLeft(ofItem: itemView, offset: 20)

positionToTheLeftOfItem_offset20

itemView.positionAbove(views: [view1, view2, view3], offset: 20)

positionViewsAbove_offset20

itemView.positionToTheRight(views: [view1, view2, view3], offset: 20)

positionViewsToTheRight_offset20

itemView.positionBelow(views: [view1, view2, view3], offset: 20)

positionViewsBelow_offset20

itemView.positionToTheLeft(views: [view1, view2, view3], offset: 20)

positionViewsToTheLeft_offset20

Between

view.fitBetween(topItem: topView, bottomItem: bottomView, offset: 20)

fitBetweenTopAndBottomItems_offset20

view.fitBetween(leftItem: leftView, rightItem: rightView, offset: 20)

fitBetweenLeftAndRightItems_offset20

Fill

parentView.fillHorizontally(views: [view1, view2, view3], separation: 20)

fillHorizontally_separation20

parentView.fillVertically(views: [view1, view2, view3], separation: 20)

fillVertically_separation20

Bound

itemView.boundHorizontally(views: [view1, view2, view3], separation: 20)

boundHorizontally_separation20

itemView.boundVertically(views: [view1, view2, view3], separation: 20)

boundVertically_separation20

Progress:

  • Travis
  • Badges
  • Tests
  • Carthage
  • CocoaPods
  • Description
  • Documentation
  • Example App
  • AppleTV
  • Prebuilt Frameworks
  • Travis Test Matrix