【发布时间】:2015-12-03 08:35:35
【问题描述】:
您好,我有一个问题,我试图通过阅读文档来解决它,但我做不到。
我希望标签栏控制器成为初始 VC 而不是 SWRevealViewController。
问题是应用程序侧的滑出菜单不是第一个 vc。 那么问题是如何在那里制作 SWRC?
【问题讨论】:
标签: ios iphone swift uitabbarcontroller swrevealviewcontroller
您好,我有一个问题,我试图通过阅读文档来解决它,但我做不到。
我希望标签栏控制器成为初始 VC 而不是 SWRevealViewController。
问题是应用程序侧的滑出菜单不是第一个 vc。 那么问题是如何在那里制作 SWRC?
【问题讨论】:
标签: ios iphone swift uitabbarcontroller swrevealviewcontroller
为什么不能将显示视图控制器作为导航队列中的最后一个控制器移动,并将带有“项目”菜单的控制器用作 Sw_front?它应该可以工作。
作为替代方案,您可以从 Storyboard 中删除整个显示视图控制器,并从导航队列中的第一个视图控制器手动创建它。然后推。
SWRevealViewController 有一个名为initWithRearViewController:frontViewController 的方法,您可以从 Storyboard 中使用instantiateViewControllerWithIdentifier 获取 Sw_rear 和 Sw_front 视图控制器。
然后,在将项目菜单(手动)添加到导航栏时,您将 revealToggle: 分配为 action 并将您的 SWRevealViewController 实例分配为 target。
这种方法有一些变体,您可以将 SWRevealViewController 放在 Storyboard 中的 Navigation Controller 之前,并将 Navigation Controller 指定为 Sw_front。那么就不需要手动实例化SWRevealViewController,只需要“Item”菜单即可。
这里对于removeGestureRecognizers 也很有用,从导航队列中的中间视图控制器的viewWillAppear 上显示视图控制器,然后在带有“项目”的视图控制器的viewWillAppear 上添加回panGestureRecognizer 和tapGestureRecognizer菜单。
更新
Here 是在 Swift 中使用 SWRevealViewController 和 Tabbar 的示例项目。
我刚刚从http://www.appcoda.com/sidebar-menu-swift/ 获取了示例项目并进行了一些调整。
我不喜欢将 SWRevealViewController 与 Storyboard 一起使用,因为每个要显示的新 ViewController 都有自己的 Navigation Controller,但如果它适合你,你可以保留它。
【讨论】: