uikit——UIView——layout定制

layout定制

// Compatibility and Adoption

@interface UIView (UIConstraintBasedCompatibility) 

/* By default, the autoresizing mask on a view gives rise to constraints that fully determine 
 the view's position. This allows the auto layout system to track the frames of views whose 
 layout is controlled manually (through -setFrame:, for example).
 When you elect to position the view using auto layout by adding your own constraints, 
 you must set this property to NO. IB will do this for you.
 */
@property(nonatomic) BOOL translatesAutoresizingMaskIntoConstraints NS_AVAILABLE_IOS(6_0); // Default YES

/* constraint-based layout engages lazily when someone tries to use it (e.g., adds a constraint to a view).  If you do all of your constraint set up in -updateConstraints, you might never even receive updateConstraints if no one makes a constraint.  To fix this chicken and egg problem, override this method to return YES if your view needs the window to use constraint-based layout.  
 */
+ (BOOL)requiresConstraintBasedLayout NS_AVAILABLE_IOS(6_0);

@end
解释:
  • requiresConstraintBasedLayout:定制是否使用constraint-based layout system,override定制
  • translatesAutoresizingMaskIntoConstraints:定制是否把autoresizing转换为constraint,代码创建的view默认YES,IB创建的view默认NO

你可能感兴趣的:(uikit)