Я создаю ViewController с панелью навигации.В этой панели я добавляю UIBarButton, к которому я добавлю переход, чтобы перейти к другому ViewController.Мне бы хотелось, чтобы эта кнопка была изображением, а не просто текстом, поэтому я попытался перейти в раздел Атрибут атрибутов и изображение к моей кнопке.Результат ужасен:
Как вы можете подумать, на этом этапе мне бы хотелось иметь правильное изображение (например, чуть меньше, у меня меньше xcassets, высота 25 пикселей).и ширина).
Мне удалось получить что-то лучшее программно, используя это:
hpSettingsBtn.image = UIImage(named: "settings")
Но все же не то, что я хотел бы.
Есть идеи?
Я также пытался с помощью функции использовать пользовательский вид, но тогда моя кнопка больше не реагировала на нажатия.
class HomePageViewController: UIViewController {
@IBOutlet weak var hpSettingsBtn: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
let button = createSettingsBtn()
hpSettingsBtn.customView = button
}
func createSettingsBtn() -> UIButton {
//create a new button
let button = UIButton(type: .custom)
//set image for button
button.setImage(UIImage(named: "settings"), for: .normal)
//set frame
button.frame = CGRect(x: 0, y: 0, width: 25, height: 25)
button.widthAnchor.constraint(equalToConstant: 25).isActive = true
button.heightAnchor.constraint(equalToConstant: 25).isActive = true
return button
}
И если я использую этот код, без UIBarButton (создавая его внутри моегосам кодирую и прикрепляю его к панели навигации), тогда я не знаю, возможно ли использовать переход с (поскольку кнопка не отображается на раскадровке).