UIButton默认的布局是左侧image,右侧title,如果想要改变image与title的frame,直接设置是不会有效果的。可以通过titleEdgeInsets、imageEdgeInsets分别修改image与title的位置。也可以通过继承UIButton,重写以下方法来自定义frame
//image的frame - (CGRect)imageRectForContentRect:(CGRect)contentRect; //title的frame - (CGRect)titleRectForContentRect:(CGRect)contentRect;
示例代码如下:
- (CGRect)titleRectForContentRect:(CGRect)contentRect { CGRect imageF; CGFloat w; CGFloat h; CGFloat x; CGFloat y; imageF = self.imageView.frame; w = contentRect.size.width - imageF.size.width; h = 20; x = 0; y = 10; return CGRectMake(x, y, w, h); } - (CGRect)imageRectForContentRect:(CGRect)contentRect { CGFloat w; CGFloat h; CGFloat x; CGFloat y; w = kImageWH; h = kImageWH; x = contentRect.size.width - w; y = 10; return CGRectMake(x, y, w, h); }
转载于:https://www.cnblogs.com/pretty-guy/p/4897775.html
最后
以上就是整齐哑铃最近收集整理的关于iOS 自定义button的全部内容,更多相关iOS内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复