Изменение размера кадра UIImageView в панели навигации не работает - PullRequest
0 голосов
/ 20 февраля 2019

По какой-то причине я не могу изменить размер моего изображения на панели навигации.

Вот мой код:

private func setupNavigationBarItems() {

    let titleImageView = UIImageView(image: UIImage(named: "radius_image"))
    titleImageView.frame = CGRect(x: 0, y: 0, width: 2, height: 2)
    titleImageView.contentMode = .scaleAspectFit
    navigationItem.titleView = titleImageView

}

Как будто линия titleImageView.frame = CGRect(x: 0, y: 0, width: 2, height: 2) даже не работает.

Не найдено ни одного недавнего решения, которое помогло бы.

1 Ответ

0 голосов
/ 20 февраля 2019

UIImageView поставляется поверх представления заголовка UINavigation Bar.В вашем случае вы не меняете рамку вида заголовка панели навигации.Использование пользовательского UIView и добавление этого экземпляра в элемент UINavigationBar должно решить вашу проблему.

let titleView = UIView.init(frame: CGRect.init(x: 0, y: 0, width: 2, height: 2)) // Add your frames
let titleImageView = UIImageView(image: UIImage(named: "radius_image")) // Give your image name
titleImageView.frame = titleView.bounds
titleView.addSubview(titleImageView)
self.navigationItem.titleView = titleView
...