iOS开发中如何设置UIButton的Aspect Fit背景图片

Posted

技术标签:

【中文标题】iOS开发中如何设置UIButton的Aspect Fit背景图片【英文标题】:How to set AspectFit background image of UIButton in iOS Developement 【发布时间】:2015-08-27 08:09:58 【问题描述】:

我正在做一个项目,我需要增加按钮高度以使触摸响应更灵敏,但我的图像较小 17px,所以我将按钮高度设置为 17px,这就是为什么它的触摸响应不佳。所以我想将按钮高度至少增加 34px,我这样做了,但是图像变得像素化了。 我将图像设置为背景图像,因为按钮中也有标题标签。 我找到了以下解决方案,但这是针对普通图像而不是背景。 因此,如果有人这样做了,请帮助我。

    [self.acceptButton setContentMode:UIViewContentModeScaleAspectFit];
[self.acceptButton setBackgroundImage:[UIImage imageNamed:@"friends-off.png"] forState:UIControlStateNormal];

寻求帮助。谢谢。

【问题讨论】:

我尝试从界面生成器中执行此操作,但它没有拉伸图像,请尝试这样做,而不是在代码中设置图像。 尝试用 [self.acceptButton setImage:[UIImage imageNamed:@"friends-off.png"] forState:UIControlStateNormal]; 【参考方案1】:

UIButton 在处理与按钮大小不同的背景图像时会很棘手。您会考虑将图像与按钮分开吗?它不那么直接,但会给你最大的灵活性来定位你的图像和确定它的大小。

因此,如果它适合您,只需在包含文本的透明按钮后面放置一个 UIImage,您就可以完全控制图像的大小和位置。

【讨论】:

以上是关于iOS开发中如何设置UIButton的Aspect Fit背景图片的主要内容,如果未能解决你的问题,请参考以下文章

iOS View自定义窍门——UIButton实现上显示图片,下显示文字

iOS开发笔记10-关于UIButton的 setBackgroundImage 和 setImage区别

iOS开发UIView的动画与嵌入的UIButton的问题

如何在 iOS 的 UITableView Cell 中为 UIButton 设置标签值?

iOS 设置所有UIButton的ExclusiveTouch属性为YES

iOS开发 UIButton的基本属性