【发布时间】:2016-11-17 13:59:38
【问题描述】:
在 loginVC 中,我创建了一个单击它的按钮,它通过这样的 segue 转到主 tabbarcontroller..
@IBAction func btnLoginPressed(sender: AnyObject) {
self.performSegueWithIdentifier("logintoMain", sender: self)
}
成功进入 tabbarmainVC 但之后 swRevealviewController 变得为零..并且滑动在这里不起作用。为什么?
class MaintabbarController: UIViewController{
@IBOutlet weak var slideBtn: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
if self.revealViewController() != nil{
slideBtn.target = self.revealViewController()
slideBtn.action = #selector(SWRevealViewController.revealToggle(_:))
self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
}
已编辑
我在登录按钮上也尝试过这段代码,点击进入 mainTabbarvc。现在它工作正常。实际上,我必须推动revealviewController,而不仅仅是它会处于活动状态..
@IBAction func btnLoginPressed(sender: AnyObject) {
let sb = UIStoryboard(name: "Main", bundle: nil)
let vc =sb.instantiateViewControllerWithIdentifier("yourtabbarvcidentifier") as! UITabBarController
vc.selectedIndex = 0
// self.presentViewController(vc, animated: true, completion: nil)
self.revealViewController().pushFrontViewController(vc, animated: true)
}
【问题讨论】:
-
您是否配置了您的故事板以正确使用 SWRevealViewController?我的意思是 sw_front segue 标识符,sw_rear segue 标识符等?
-
是的,一切正常。唯一的问题是在单击 viewcontroller@ReinierMelian 的任何按钮后通过 segue 返回此页面
标签: ios swift uitabbarcontroller swrevealviewcontroller