自定义Button布局

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{
    
}

效果图:

自定义布局.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容