这必须很简单,但是我有一个System类型的UIButton。我以实用的方式在代码中设置了图像,但是在渲染它时,它注意到图像并没有填满整个按钮。下面的屏幕截图中突出显示的框是UIImageView。周围的外框是UIButton。
self.customNavigationBar.rightButton.setImage("icon".toImage, for: .normal)
有什么想法吗?
答案 0 :(得分:0)
如果您的图片资源与按钮的大小匹配,请确保将按钮的插图设置为零:
let button = self.customNavigationBar.rightButton
button.setImage("icon".toImage, for: .normal)
button.imageEdgeInsets = .zero
如果不是这种情况,则更通用的方法是更改UIImageView
内部的内部UIButton
的约束:
let button = self.customNavigationBar.rightButton
button.setImage("icon".toImage, for: .normal)
button.imageView!.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
button.imageView!.widthAnchor.constraint(equalTo: button.widthAnchor, multiplier: 1),
button.imageView!.heightAnchor.constraint(equalTo: button.heightAnchor, multiplier: 1),
button.imageView!.centerXAnchor.constraint(equalTo: button.centerXAnchor),
button.imageView!.centerYAnchor.constraint(equalTo: button.centerYAnchor),
])