我有一个UIButton用于画笔,另一个用于缩放。
如果我保持图像相同,两者都能正常工作。 图像附加到Interface Builder中的按钮:
如果我更改“绘图”的按钮图像,则在缩放操作后,图像将返回无缩放。
drawButton.setImage(UIImage.init(named: "Brush.png"), for: UIControlState.normal)
如何在不影响缩放的情况下更改图像 - 我希望能够以缩放模式进行绘制。
我尝试过这样的事情:
drawButton.imageView?.image = UIImage.init(named: "BrushYellow.png")
这不会影响缩放,但不会更改图像。欢迎您的想法。
答案 0 :(得分:1)
我倾向于使用背景图像并强制纵横比等于我按钮上图像的宽高比。它可以防止你提到的所有棘手的问题。
查看照片的实际方面,并使用图像尺寸的纵横比在故事板上设置约束。如果以编程方式创建它,则使用比率设置框架也应该有效。确保您使用
UIButton().setBackgroundImage(image: UIImage?, for: UIControlState)
更改图像或者图像重叠。如果你需要将它设置为多个控制状态,那么这样做,但我很少发现除了.Normal之外的其他任何东西
如果您需要更改约束,那么您可以为它创建一个插座,并将其乘数从1:1更改为它应该返回的任何值。如果用户界面未自行更新,您可能需要致电self.view.layoutIfNeeded()