2017-01-12 3 views
0

Я пытаюсь показать плавающее меню на отдельном контроллере просмотра, который не является корневым? Обычно я просто добавляю его в контроллер rootview.Как добавить контроллер меню в любой UiViewController, отличный от rootview?

пусть menuController = AppMenuController (RootViewController: toolbarController)

let navigationController = AppNavigationDrawerController(rootViewController: menuController, leftViewController: leftViewController,rightViewController: rightViewController) 
    let statusController = AppStatusBarController(rootViewController: navigationController) 

    window = UIWindow(frame: Screen.bounds) 

    window!.rootViewController = statusController 

    window!.makeKeyAndVisible() 
+0

Делитесь дополнительной информацией и о том, что вы пробовали до сих пор. –

+0

Я только когда-либо добавлял его в консоль rootview –

ответ

0

пусть главная: MainViewController = { возврата UIStoryboard.viewController (идентификатор: "MainViewController"), как! MainViewController}()

пусть NewView = AppMenuController (RootViewController: основной)

self.present (allergyView, анимированные: ложь, завершение: ноль)

0

Добавьте Menu как свойство UIViewController. Например:

class ViewController: UIViewController { 
    fileprivate let menu = Menu() 
    fileprivate let baseSize = CGSize(width: 64, height: 64) 

    open override func viewDidLoad() { 
     super.viewDidLoad() { 
     prepareMenu() 
    } 
} 

extension MenuController { 
    fileprivate func prepareMenu() { 
     menu.zPosition = 1000 
     menu.baseSize = baseSize 

     view.layout(menu) 
      .size(baseSize) 
      .bottom(24) 
      .right(24) 
    } 
} 

В тех случаях, когда вы не хотели бы использовать материал контроллеры с контроллерами зрения корня, вы должны быть в состоянии смотреть на коде установки в этих контроллерах, чтобы увидеть код, необходимый для добавления компонента они управляйте, например, MenuController.

Все самое лучшее :)

Смежные вопросы