Member 13641227 Ответов: 0

Изображение не отображается при установке его в uinavigationcontroller


Я пытаюсь создать класс Cocoa Touch, который назначается моему навигационному контроллеру в моей раскадровке для отображения изображения на панели навигации в центре. Приложение строится, но изображение не отображается, и я могу понять, почему.

class NavBarImg: UINavigationController {
    
    
    required init(coder aDecoder: NSCoder){
            super.init(coder: aDecoder)!
            setupView()
    }
    
    func setupView()
    {
        if navigationController == nil{
            return
        }
        
        let image = #imageLiteral(resourceName: "BarTabsNavLogoWhite")
        let imageView = UIImageView(image: image)
        
        let bannerWidth = navigationBar.frame.size.width
        let bannerHeight = navigationBar.frame.size.height
        
        let bannerX = bannerWidth / 2 - image.size.width / 2
        let bannerY = bannerHeight / 2 - image.size.height / 2
        
        imageView.frame = CGRect(x: bannerX, y: bannerY, width: bannerWidth, height: bannerHeight)
        imageView.contentMode = .scaleAspectFit
        
        self.navigationItem.titleView = imageView  
        
    }

    }


Что я уже пробовал:

- Назначенный пользовательский класс в раскадровке
- В настоящее время он работает как расширение для UIViewController, но изображение на титульном экране загружается каждый раз. Глядя, чтобы сделать его более текучим и потенциально заставить его работать с @IBDesignable.

0 Ответов