1
次のメソッドを使用して現在のviewController
を取得しましたが、常にcurrentControllerとしてSWRevealViewController
を返します。SWRevealViewController currentControllerの取得中に発生する問題
私はSWRevealViewController
をスライドメニューの操作に使用しました。ここで
extension UIApplication {
class func topViewController(base: UIViewController) -> UIViewController?{
if let nav = base as? UINavigationController {
return topViewController(nav.visibleViewController!)
}
if let tab = base as? UITabBarController {
if let selected = tab.selectedViewController {
return topViewController(selected)
}
}
if let presented = base.presentedViewController {
return topViewController(presented)
}
return base
}
}
が、私は現在のコントローラを取得しようとしています方法です:
let topVC = UIApplication.topViewController(((UIApplication.sharedApplication().delegate as! AppDelegate).window?.rootViewController)!)
print(topVC)
if topVC!.isKindOfClass(mycontroller) == false{
//do something
}else{
// do another thing
}
}
私のコードを読んでください、私は中にいることを実施しています私のコード。 –