Если ваш ресурс изображения соответствует размеру вашей кнопки, убедитесь, что вставки кнопки установлены на ноль:
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),
])