| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- //
- // NSArray+MASAdditions.h
- //
- //
- // Created by Daniel Hammond on 11/26/13.
- //
- //
- #import "MASUtilities.h"
- #import "MASConstraintMaker.h"
- #import "MASViewAttribute.h"
- typedef NS_ENUM(NSUInteger, MASAxisType) {
- MASAxisTypeHorizontal,
- MASAxisTypeVertical
- };
- @interface NSArray (MASAdditions)
- /**
- * Creates a MASConstraintMaker with each view in the callee.
- * Any constraints defined are added to the view or the appropriate superview once the block has finished executing on each view
- *
- * @param block scope within which you can build up the constraints which you wish to apply to each view.
- *
- * @return Array of created MASConstraints
- */
- - (NSArray *)mas_makeConstraints:(void (^)(MASConstraintMaker *make))block;
- /**
- * Creates a MASConstraintMaker with each view in the callee.
- * Any constraints defined are added to each view or the appropriate superview once the block has finished executing on each view.
- * If an existing constraint exists then it will be updated instead.
- *
- * @param block scope within which you can build up the constraints which you wish to apply to each view.
- *
- * @return Array of created/updated MASConstraints
- */
- - (NSArray *)mas_updateConstraints:(void (^)(MASConstraintMaker *make))block;
- /**
- * Creates a MASConstraintMaker with each view in the callee.
- * Any constraints defined are added to each view or the appropriate superview once the block has finished executing on each view.
- * All constraints previously installed for the views will be removed.
- *
- * @param block scope within which you can build up the constraints which you wish to apply to each view.
- *
- * @return Array of created/updated MASConstraints
- */
- - (NSArray *)mas_remakeConstraints:(void (^)(MASConstraintMaker *make))block;
- /**
- * distribute with fixed spacing
- *
- * @param axisType which axis to distribute items along
- * @param fixedSpacing the spacing between each item
- * @param leadSpacing the spacing before the first item and the container
- * @param tailSpacing the spacing after the last item and the container
- */
- - (void)mas_distributeViewsAlongAxis:(MASAxisType)axisType withFixedSpacing:(CGFloat)fixedSpacing leadSpacing:(CGFloat)leadSpacing tailSpacing:(CGFloat)tailSpacing;
- /**
- * distribute with fixed item size
- *
- * @param axisType which axis to distribute items along
- * @param fixedItemLength the fixed length of each item
- * @param leadSpacing the spacing before the first item and the container
- * @param tailSpacing the spacing after the last item and the container
- */
- - (void)mas_distributeViewsAlongAxis:(MASAxisType)axisType withFixedItemLength:(CGFloat)fixedItemLength leadSpacing:(CGFloat)leadSpacing tailSpacing:(CGFloat)tailSpacing;
- @end
|