Я пытался создать кнопку. Хорошо работает на iOS10 и iOS11. Я думаю, что проблема в вашем коде в том, что вы установили неправильный фрейм для своей пользовательской кнопки.
override func viewDidLoad() {
super.viewDidLoad()
setupBarButton()
}
private func setupBarButton() {
let languageTopBarButton = UIButton(type: .custom)
languageTopBarButton.frame = CGRect(x: 0, y: 0, width: 20, height: 20)
languageTopBarButton.setImage(UIImage(named: "iconGlobe"), for: .normal)
let rightBarButton = UIBarButtonItem(customView: languageTopBarButton)
self.navigationItem.rightBarButtonItem = rightBarButton
}