Все, кто его читает, привет и благодарю вас. Я пишу приложение вроде Viber или WhatsApp для iOS-устройств с использованием Xcode 8.2.1 и Swift 3.0. У меня проблема: я хочу, чтобы в моем приложении был контроллер навигации, но не простой, я хочу, чтобы он был обычным. Существует экран печати с WhatsApp быть понимание, что я пытаюсь достичь:Swift 3 Custom Navigation Controller Class
Как мы видим, эта навигация контроллер имеет 3 кнопки, метки и изображение с аватаром. Я также хочу изменить свой цвет на зеленый. Из-за этого я создал класс:
import UIKit
class CustomNavigationController: UINavigationController {
override func viewDidLoad() {
super.viewDidLoad()
self.navigationBar.barTintColor = UIColor.green
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 39, height: 39))
imageView.contentMode = .scaleAspectFit
let image = UIImage(named: "logo")
imageView.image = image
navigationItem.titleView = imageView
}
}
И это дает этот результат: Как вы можете видеть, что это не картина. Я знаю, что если добавить этот код:
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 39, height: 39))
imageView.contentMode = .scaleAspectFit
let image = UIImage(named: "logo")
imageView.image = image
navigationItem.titleView = imageView
к ViewController, изображение с логотипом появится, но я хочу, полный класс, который я соединит где (например, в Interface Builder) и он будет делать красивый Навигационный контроллер с кнопками, изображениями и т. д. Кроме того, я могу создать другой класс с другим контроллером навигации и подключить его к различным экранам, на которые, например, мне не нужны изображения, только кнопки. Итак, вопрос заключается в следующем: как создать пользовательский класс контроллера навигации?
Я буду очень рад и благодарен за любую помощь, спасибо!