Как настроить кадры в подклассах UIBarButtonItem? - PullRequest
0 голосов
/ 14 марта 2019

Кто-нибудь знает, как исправить кадры в элементах UIBarButtonItem, которые я инкапсулировал в подклассы UIBarButtonItem?

Вот что у меня есть, и это прекрасно работает, но изображение для BarButtonItem не отображается правильно.Красные стрелки указывают на кадры barButtonItems, которые следуют из этого кода.

enter image description here

class AddEntryButton: UIBarButtonItem {

fileprivate weak var screen: UIViewController?

init(screen: UIViewController){
    self.screen = screen
    super.init()
    self.action = #selector(AddEntryButton.didTap)
    let plusImage = #imageLiteral(resourceName: "plusSymbol")
    self.setBackgroundImage(plusImage, for: .normal, barMetrics: .default)
    self.style = .plain
}

required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
}

@objc func didTap(_ sender: Any) {
    screen.doAction()
}

}

Вотвызовите сайт внутри ViewController:

let addEntryButton = AddEntryButton(screen: self)
self.navigationItem.rightBarButtonItem = addButton

На данный момент лучше всего добавить что-то подобное в init.

self.imageInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: -15)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...