gpt4 book ai didi

ios - 通过 segue 返回后 SWRevealViewController 是否为零?

转载 作者:搜寻专家 更新时间:2023-10-31 22:59:45 27 4
gpt4 key购买 nike

在 loginVC 中,我创建了一个点击按钮,它会像这样通过 segue 转到主 tabbarcontroller..

@IBAction func btnLoginPressed(sender: AnyObject) {
self.performSegueWithIdentifier("logintoMain", sender: self)
}

成功转到 tabbarmainVC,但之后 swRevealviewController 变为 nil.. 并且滑动在这里不起作用。为什么?

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)
}

最佳答案

尝试将它添加到这个函数中,看看会发生什么:

override func viewWillAppear(animated: Bool) {
if self.revealViewController() != nil{
slideBtn.target = self.revealViewController()
slideBtn.action = #selector(SWRevealViewController.revealToggle(_:))
self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
}

这将在 View 处于事件状态时出现。

关于ios - 通过 segue 返回后 SWRevealViewController 是否为零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38377798/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com