无法使SWRevealViewController工作(Swift 2,Xcode 7)

瑞安比拉克

尝试实现SWRevealViewController时会遇到很多麻烦:

GitHub链接

我遵循了一些不同的教程,但仍然无法正常工作。在按照指示进行操作之后:

  1. 导入SWRevealController Obj-C文件
  2. 添加桥接头并导入SWRevealController
  3. 将viewcontroller添加到情节提要中并设置类“ SWRevealViewController”
  4. 我有一个登录屏幕,因此我在登录屏幕之前添加了一个导航控制器,并将导航栏隐藏在此视图上
  5. 将登录屏幕选择到RevealViewController
  6. 添加tableViewController并创建带有标识符“ sw_rear”类“ none”的segue,我也尝试过将类也设置为“ SWRevealViewControllerSegueSetController”
  7. 添加连接到导航控制器的segue w / identifer“ sw_front”,该导航控制器已连接到我的主屏幕,并添加了类“ SWRevealViewSegueSetController”
  8. 添加了菜单项
  9. 为菜单项制作插座
  10. 在viewDidLoad中添加了以下代码

    if revealViewController() != nil {
        print("this is running")
        menuButton.target = revealViewController()
        menuButton.action = #selector(SWRevealViewController.revealToggle(_:))
        self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
    }
    

当我加载该应用程序时,没有错误,并且当我单击menuButton时也没有任何反应。

任何建议都很好,我已经尝试了两天。

**编辑-只是注意到平移手势识别器似乎使我回到了我的登录页面**编辑-还想注意我添加的菜单项是一个按钮,而不是图像...。

吉祥99

由于菜单按钮是一个按钮,而不是用于设置目标和操作的两行,请使用以下命令添加目标/操作:

menuButton.addTarget(revealViewController(), action: #selector(SWRevealViewController.revealToggle(_:)), forControlEvents: .TouchUpInside)

要检查的另一件事是RevealViewController()是否实际上指向您的SWRevealViewController。在某些情况下可能为零!请查看以下有关如何确保视图控制器(在其中设置菜单按钮的位置)实际上具有指向SWRevealViewController的工作指针的讨论:查找SWRevealViewController

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章