iOS 内边距设置

122 阅读1分钟

通过intrinsicContentSize重置视图大小,达到调整内边距的目的。

@property (nonatomic, assign) UIEdgeInsets edgeInsets;


- (void)setEdgeInsets:(UIEdgeInsets)edgeInsets{

    _edgeInsets = edgeInsets;

    [self invalidateIntrinsicContentSize];

}

  


- (CGSize)intrinsicContentSize{

    CGSize size = [super intrinsicContentSize];

    size.width  += self.edgeInsets.left + self.edgeInsets.right;

    size.height += self.edgeInsets.top + self.edgeInsets.bottom;

    return size;

}