SSASideMenu
SSASideMenu copied to clipboard
how to access appdelegate in sidemenu
var storyboard:UIStoryboard = UIStoryboard(name:
"Main", bundle: NSBundle.mainBundle())
sideMenuViewController?.contentViewController = UINavigationController(rootViewController: (storyboard.instantiateViewControllerWithIdentifier("NotificationViewController") as? NotificationViewController)!)
sideMenuViewController?.hideMenuViewController()
its go to that view controller but all property and object it nill and does not work menu this method not call sideMenuViewController?._presentLeftMenuViewController()
@ArjunSa786 is this the same issue that you had before I have updated my code https://github.com/SSA111/SSASideMenu/issues/25
yes same issue LuaiKalkatawi
this code work with me
guard let vacanceDetailsTableViewController = AppDelegate.storyboard.instantiateViewController(withIdentifier: "vacanceDetailsTableViewController") as? vacanceDetailsTableViewController else{completionHandler(.noData);return}
vacanceDetailsTableViewController.id = Int(id) ?? 0
vacanceDetailsTableViewController.getVacanceData = true
guard let SSASideMenuView = AppDelegate.storyboard.instantiateViewController(withIdentifier: "SSASideMenuView") as? SSASideMenu else{completionHandler(.noData);return}
SSASideMenuView.contentViewController = vacanceDetailsTableViewController
let nav = UINavigationController(rootViewController: SSASideMenuView)
guard let SSASide = window?.rootViewController as? SSASideMenu else{completionHandler(.noData);return}
SSASide.contentViewController = nav
completionHandler(.noData)
and this to git top view with ssasidemenu
public class func topViewController(_ base: UIViewController? = UIApplication.shared.keyWindow?.rootViewController,returnNav:Bool=false) -> UIViewController? {
if let SSASide = base as? SSASideMenu {
if let nav = SSASide.contentViewController as? UINavigationController{
if returnNav{
return nav
}else {
return topViewController(nav.visibleViewController)
}
}else{ // without nav
return topViewController(SSASide.contentViewController)
}
}
if let nav = base as? UINavigationController {
return topViewController(nav.visibleViewController)
}
if let tab = base as? UITabBarController {
let moreNavigationController = tab.moreNavigationController
if let top = moreNavigationController.topViewController, top.view.window != nil {
return topViewController(top)
} else if let selected = tab.selectedViewController {
return topViewController(selected)
}
}
if let presented = base?.presentedViewController {
return topViewController(presented)
}
return base
}