OGeek|极客世界-中国程序员成长平台

标题: ios - 关闭抽屉 Controller 后,swift4中将调用哪个 View Controller 生命周期方法? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 04:34
标题: ios - 关闭抽屉 Controller 后,swift4中将调用哪个 View Controller 生命周期方法?

我有一个标签栏 Controller ,在该标签栏内我有五个 View Controller 。我也有一个在 homeVC 上的右 View Controller (抽屉)。对于 rightViewController 我使用 MMDrawerController 来源:https://www.youtube.com/watch?time_continue=1468&v=TdKnImb4SWs .在 appdelegate 中。现在当右 View Controller 关闭时, View Controller 的哪个生命周期被调用?因为我想写一个函数。我在 appdelegate 上使用过这段代码

    let rightViewController = mainStoryboard.instantiateViewController(withIdentifier: "RightViewVC") as! RightViewVC



       UINavigationBar.appearance().titleTextAttributes = [NSAttributedStringKey.foregroundColor : UIColor.white]

    let rightSideMenuNav = UINavigationController(rootViewController: rightViewController)
    drawerController = MMDrawerController(center:mainPage,rightDrawerViewController:rightSideMenuNav)

   // drawerController!.openDrawerGestureModeMask = MMOpenDrawerGestureMode.panningCenterView
    drawerController!.closeDrawerGestureModeMask = MMCloseDrawerGestureMode.panningCenterView
    drawerController!.closeDrawerGestureModeMask = MMCloseDrawerGestureMode.all
    drawerController!.preferredInterfaceOrientationForPresentation = MMDrawerOpenCenterInteractionMode.full

    window?.rootViewController = drawerController



Best Answer-推荐答案


MMDrawer 在打开、关闭或切换抽屉时提供完成 block ,您只需比较抽屉关闭或打开等事件即可获得成功。这是代码

@IBAction func rightMenuButtonTapped(_ sender: Any) { 

    let appdelegate = UIApplication.shared.delegate as! AppDelegate 

    appdelegate.drawerController?.toggle(MMDrawerSide.right, animated: true){ (isCompleted) in 
            if appdelegate.drawerController?.openSide == MMDrawerSide.none 
            { 
                 print("drawer close")
                 if let objHome = appdelegate.drawerController?.centerViewController as? HomeVC{ 
                      print("Got Home VC") 
                 }  
            } 
            else if appdelegate.drawerController?.openSide == MMDrawerSide.right 
            { 
                 print("drawer open") 
            } 
     }
}

关于ios - 关闭抽屉 Controller 后,swift4中将调用哪个 View Controller 生命周期方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51568270/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4