调整按钮中的图像大小

时间:2018-05-23 18:26:58

标签: ios xcode

我有一个里面有图像的按钮,但是我想调整这个图像的大小,我该如何调整图像的大小? 我试图让我的图像高150点,但我不知道如何以编程方式做到这一点

enter image description here

2 个答案:

答案 0 :(得分:1)

最好的方法是以适当的尺寸重新生成图像资源(使用photoshop,预览等),然后再使用它。

另一个选项,在故事板中切换到标尺选项卡并调整图像插入。

image insets

另一种方法是使用UIImageView并向其添加UITapGestureRecognizer以检测点击。然后,您可以使用约束配置图像视图并设置纵横比。这里的缺点是,当按下/按下按钮时,你会丢失按钮的状态变化,因此它不会看起来很好。我也不会将图像视图添加为按钮的子视图,这可能会产生奇怪的问题。

我想补充的一点是,调整图片大小可能会很昂贵。如果要将这些按钮加载到tableview中,则需要注意不要在单元格入队/出列时意外调整图像大小。这将阻止主线程并导致平滑滚动问题。

答案 1 :(得分:0)

设置按钮的图像时,它将包含一个包含图像的imageView属性。因此,您可以将imageView的contentMode属性设置为.scaleAspectFit,以便在调整大小后保持图像比例:

button.imageView?.contentMode = .scaleAspectFit

实际的大小调整可以使用布局约束在InterfaceBuilder中完成,例如。

但是,如果您在编译时知道按钮目标大小,则应确保图像已具有所需大小,而不是在运行时调整大小错误的图像。