我只有一个简单的按钮,我正在尝试添加图像,但无论我对约束做什么,图像总是只是更改按钮的大小以匹配图像大小。我是否需要更改图像大小以匹配按钮的大小,或者我缺少什么?我尝试使用此约束修饰符来设置固定的宽度和高度,但它似乎没有做任何事情。https://i.stack.imgur.com/QcAZK.jpg
我知道这是基本的,但我似乎找不到任何可用的资源。
创建 UIButton 的子类并重写 imageRect 方法并传递所需的任何图像矩形。按钮现在将具有您想要的任何大小,无论图像有多大或多小。
在下面的代码中,我设置了从按钮的 (0,0( 开始的图像。图像将采用按钮的高度和相对于按钮高度的宽度。
import UIKit
class MyTestButton: UIButton {
override func imageRect(forContentRect contentRect: CGRect) -> CGRect {
return CGRect(x: 0, y: 0, width: contentRect.height * 2.285, height: contentRect.height)
}
}
奖金:
您也可以通过覆盖来设置按钮标题的矩形
override func titleRect(forContentRect contentRect: CGRect) -> CGRect {
// return the rect you want
}
使用这些方法以您想要的方式设置标题图像和文本的框架:)现在添加要添加到按钮的任何约束,按钮将遵循:)