Layout Element Properties
- ASStackLayoutElement Properties - will only take effect on a node or layout spec that is the child of a stack spec
- ASAbsoluteLayoutElement Properties - will only take effect on a node or layout spec that is the child of a absolute spec
- ASLayoutElement Properties - applies to all nodes & layout specs
ASStackLayoutElement Properties
Property | Description |
---|---|
CGFloat .style.spacingBefore |
Additional space to place before this object in the stacking direction. |
CGFloat .style.spacingAfter |
Additional space to place after this object in the stacking direction. |
CGFloat .style.flexGrow |
If the sum of children's stack dimensions is less than the minimum size, should this object grow? |
CGFloat .style.flexShrink |
If the sum of children's stack dimensions is greater than the maximum size, should this object shrink? |
ASDimension .style.flexBasis |
Specifies the initial size for this object, in the stack dimension (horizontal or vertical), before the flexGrow / flexShrink properties are applied and the remaining space is distributed. |
ASStackLayoutAlignSelf .style.alignSelf |
Orientation of the object along cross axis, overriding alignItems. Options include:
|
CGFloat .style.ascender |
Used for baseline alignment. The distance from the top of the object to its baseline. |
CGFloat .style.descender |
Used for baseline alignment. The distance from the baseline of the object to its bottom. |
ASAbsoluteLayoutElement Properties
Property | Description |
---|---|
CGPoint .style.layoutPosition |
The CGPoint position of this object within its ASAbsoluteLayoutSpec parent spec. |
ASLayoutElement Properties
Property | Description |
---|---|
ASDimension .style.width |
The width property specifies the width of the content area of an ASLayoutElement . The minWidth and maxWidth properties override width . Defaults to ASDimensionAuto . |
ASDimension .style.height |
The height property specifies the height of the content area of an ASLayoutElement . The minHeight and maxHeight properties override height . Defaults to ASDimensionAuto . |
ASDimension .style.minWidth |
The minWidth property is used to set the minimum width of a given element. It prevents the used value of the width property from becoming smaller than the value specified for minWidth . The value of minWidth overrides both maxWidth and width . Defaults to ASDimensionAuto . |
ASDimension .style.maxWidth |
The maxWidth property is used to set the maximum width of a given element. It prevents the used value of the width property from becoming larger than the value specified for maxWidth . The value of maxWidth overrides width , but minWidth overrides maxWidth . Defaults to ASDimensionAuto . |
ASDimension .style.minHeight |
The minHeight property is used to set the minimum height of a given element. It prevents the used value of the height property from becoming smaller than the value specified for minHeight . The value of minHeight overrides both maxHeight and height . Defaults to ASDimensionAuto . |
ASDimension .style.maxHeight |
The maxHeight property is used to set the maximum height of a given element. It prevents the used value of the height property from becoming larger than the value specified for maxHeight . The value of maxHeight overrides height , but minHeight overrides maxHeight . Defaults to ASDimensionAuto |
CGSize .style.preferredSize |
Provides a suggested size for a layout element. If the optional minSize or maxSize are provided, and the preferredSize exceeds these, the minSize or maxSize will be enforced. If this optional value is not provided, the layout element’s size will default to it’s intrinsic content size provided calculateSizeThatFits: This method is optional, but one of either preferredSize or preferredLayoutSize is required for nodes that either have no intrinsic content size or should be laid out at a different size than its intrinsic content size. For example, this property could be set on an ASImageNode to display at a size different from the underlying image size. Warning: calling the getter when the size's width or height are relative will cause an assert. |
CGSize .style.minSize |
An optional property that provides a minimum size bound for a layout element. If provided, this restriction will always be enforced. If a parent layout element’s minimum size is smaller than its child’s minimum size, the child’s minimum size will be enforced and its size will extend out of the layout spec’s. For example, if you set a preferred relative width of 50% and a minimum width of 200 points on an element in a full screen container, this would result in a width of 160 points on an iPhone screen. However, since 160 pts is lower than the minimum width of 200 pts, the minimum width would be used. |
CGSize .style.maxSize |
An optional property that provides a maximum size bound for a layout element. If provided, this restriction will always be enforced. If a child layout element’s maximum size is smaller than its parent, the child’s maximum size will be enforced and its size will extend out of the layout spec’s. For example, if you set a preferred relative width of 50% and a maximum width of 120 points on an element in a full screen container, this would result in a width of 160 points on an iPhone screen. However, since 160 pts is higher than the maximum width of 120 pts, the maximum width would be used. |
ASLayoutSize .style.preferredLayoutSize |
Provides a suggested RELATIVE size for a layout element. An ASLayoutSize uses percentages rather than points to specify layout. E.g. width should be 50% of the parent’s width. If the optional minLayoutSize or maxLayoutSize are provided, and the preferredLayoutSize exceeds these, the minLayoutSize or maxLayoutSize will be enforced. If this optional value is not provided, the layout element’s size will default to its intrinsic content size provided calculateSizeThatFits: |
ASLayoutSize .style.minLayoutSize |
An optional property that provides a minimum RELATIVE size bound for a layout element. If provided, this restriction will always be enforced. If a parent layout element’s minimum relative size is smaller than its child’s minimum relative size, the child’s minimum relative size will be enforced and its size will extend out of the layout spec’s. |
ASLayoutSize .style.maxLayoutSize |
An optional property that provides a maximum RELATIVE size bound for a layout element. If provided, this restriction will always be enforced. If a parent layout element’s maximum relative size is smaller than its child’s maximum relative size, the child’s maximum relative size will be enforced and its size will extend out of the layout spec’s. |