设置新图像后调整 UIButton 的大小

Resizing a UIButton after setting a new image

我有一个 UIButton 子类,只要用户按下它,我就会设置动画。当它没有被按下时,UIButton 使用 "non-selected" 图像并且看起来很棒,但是当用户按下它时我设置了一个新的 "selected" 图像。

这很好用,除了所选图像比未选择图像大,所以当按钮设置所选图像时,它不会调整大小以适应新图像。

按钮太小,图像被挤压变形。

我尝试在设置新图像后调用一些方法,如 setNeedsLayoutsetNeedsDisplay(单独调用,而不是一起调用),但按钮保持相同大小。

当我在按钮上设置新图像时,如何让按钮调整大小?

您可以将button.frame设置为图片的大小。