UIButton为一个复合控件,内部包含一个ImageView和一个Label,默认图片在左,文字在右,一些情况下,我们需要手动修改Button内部布局,当多个Button组合排列时闲的更为整齐
示例代码:
/*
typedef NS_ENUM(NSInteger, UIControlContentHorizontalAlignment) {
UIControlContentHorizontalAlignmentCenter = 0,
UIControlContentHorizontalAlignmentLeft = 1,
UIControlContentHorizontalAlignmentRight = 2,
UIControlContentHorizontalAlignmentFill = 3,
};
*/
// button整体内容左对齐
self.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
// 设置图片间距
self.imageEdgeInsets = UIEdgeInsetsMake(0, 30, 0, 0);
// 设置文字的间距
self.titleEdgeInsets = UIEdgeInsetsMake(0, 60, 0, 0);
// 取消系统默认的高亮状态渲染
self.adjustsImageWhenHighlighted = NO;
取消Button的高亮状态系统渲染,除了设置self.adjustsImageWhenHighlighted属性外,还可以空实现
- (void)setHighlighted:(BOOL)highlighted{
}
效果图: