【发布时间】:2015-08-27 17:41:22
【问题描述】:
我有一个UIButton 子类,只要用户按下它,我就会对其进行动画处理。当它没有被按下时,UIButton 使用“未选择”图像并且看起来很棒,但是当用户按下它时,我设置了一个新的“选择”图像。
这很好用,除了选定的图像比未选定的图像大,所以当按钮设置选定的图像时,它不会调整大小以适应新的图像。
按钮太小,图像被夹住,看起来变形了。
我尝试在设置新图像后调用setNeedsLayout 和setNeedsDisplay 之类的方法(分开,不一起),但按钮保持相同大小。
如何在按钮上设置新图像时调整其大小?
【问题讨论】:
-
您是否将图像的内容模式设置为宽高比?这可能是默认设置,但我想不起来了。
-
调整按钮大小与 contentMode 属性无关。
-
“按钮太小,图像被捏住,看起来失真”通常与内容模式有关。此外,您应该让内在内容大小在很大程度上驱动按钮的大小。无论如何,按钮只是在一天结束时从 UIView 继承,这意味着您可以只操作框架
标签: ios uibutton uiimage setneedsdisplay