deleted-mezhevikin
@deleted-mezhevikin

Как сделать отступ сверху в UINavigationController c кастомным TabBar?

Есть класс NavigationController: UINavigationController. Вместо стандартного UINavigationBar размещаю свою view c высотой 75. Как в topViewController сделать нужный отступ сверху? Пробовал делать это в методе делегата willShowViewController - позиция вообще не изменяется.

//
//  NavigationController.swift
//

import UIKit

class NavigationController: UINavigationController, UINavigationControllerDelegate {

    override init(rootViewController: UIViewController) {
        super.init(rootViewController: rootViewController)
        navigationBarHidden = true
        interactivePopGestureRecognizer?.delegate = nil
        self.delegate = self
        addNavigationView()
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
    }

    override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
        super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
    }

    func addNavigationView() {
        let navigationView = UIView(x: 0, y: 0, w: view.w, h: 75)
        navigationView.backgroundColor = UIColor.blueColor()
        view.addSubview(navigationView)
    }

    // MARK: Delegate 

    func navigationController(navigationController: UINavigationController, willShowViewController viewController: UIViewController, animated: Bool) {
        viewController.view.y = 75;
    }

    func navigationController(navigationController: UINavigationController, didShowViewController viewController: UIViewController, animated: Bool) {

    }

}
  • Вопрос задан
  • 780 просмотров
Пригласить эксперта
Ответы на вопрос 1
f0r3s1
@f0r3s1
iOS Developer
Какой отступ? От чего? От верха? Какую view тебе отодвинуть надо? Я ничего не понял в вопросе, это что за код? Бери в didload и двигай что тебе нужно, ты тут начал что-то мудрить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы