使用相同 SWRevealViewController 的不同 ViewController 上的侧边栏
Sidebars on different ViewControllers using same SWRevealViewController
我已经使用 SWRevealViewController
创建了边栏。在本文中,我将 HomeViewController
用作 front,将 SidebarViewController
用作 right。
我的 SidebarViewController
包含一个 UITableView
(具有不同的主题名称)。我想打开一个新的 ViewController
说 QuestionsViewController
选择任何主题。
现在我的问题是我想再次使用 SWRevealViewController
在 QuestionViewController
中有一个侧边栏,但是在 SWRevealViewController
中,前面 segue 的标识符 sw_front
是一个常量字符串,所以我该如何更改它或者有任何其他方式在 QuestionViewController
中也有该侧边栏。
简而言之:我们可以使用SWRevelViewController
在不同的ViewControllers
中有相同的侧边栏吗
只需使用 "reveal view controller set controller" segue
将 RevealViewController 连接到新的视图控制器
试试这个:
使用 HomeViewController 创建 NavigationViewController,
将 RevealViewController 连接到 NavigationController 为 "reveal view controller set controller",
将 HomeViewController 连接到 QuestionViewController 为 "show",
在导航栏左侧添加 "bar button item"(named:"OpenSideBar"),
在他们的 swift 文件中创建一个出口,然后添加到您的 viewDidLoad 中:
OpenSideBar.target = self.revealViewController()
OpenSideBar.action = Selector("revealToggle:")
**对我有用
我找到了解决方案,我们可以使用以下代码更改前后ViewControllers
。
UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
[self.revealViewController setRightViewController:[storyBoard instantiateViewControllerWithIdentifier:@"SideBarVC"]]; // To change rightViewController
[self.revealViewController setFrontViewController:[storyBoard instantiateViewControllerWithIdentifier:@"HomeVC"] animated:YES]; // To change frontViewController
为此我们必须使用 SWRevealViewControllerSeguePushController
作为 segue class 其他 FrontViewControllers
感谢大家的帮助。
我已经使用 SWRevealViewController
创建了边栏。在本文中,我将 HomeViewController
用作 front,将 SidebarViewController
用作 right。
我的 SidebarViewController
包含一个 UITableView
(具有不同的主题名称)。我想打开一个新的 ViewController
说 QuestionsViewController
选择任何主题。
现在我的问题是我想再次使用 SWRevealViewController
在 QuestionViewController
中有一个侧边栏,但是在 SWRevealViewController
中,前面 segue 的标识符 sw_front
是一个常量字符串,所以我该如何更改它或者有任何其他方式在 QuestionViewController
中也有该侧边栏。
简而言之:我们可以使用SWRevelViewController
ViewControllers
中有相同的侧边栏吗
只需使用 "reveal view controller set controller" segue
将 RevealViewController 连接到新的视图控制器试试这个: 使用 HomeViewController 创建 NavigationViewController, 将 RevealViewController 连接到 NavigationController 为 "reveal view controller set controller", 将 HomeViewController 连接到 QuestionViewController 为 "show", 在导航栏左侧添加 "bar button item"(named:"OpenSideBar"), 在他们的 swift 文件中创建一个出口,然后添加到您的 viewDidLoad 中:
OpenSideBar.target = self.revealViewController()
OpenSideBar.action = Selector("revealToggle:")
**对我有用
我找到了解决方案,我们可以使用以下代码更改前后ViewControllers
。
UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
[self.revealViewController setRightViewController:[storyBoard instantiateViewControllerWithIdentifier:@"SideBarVC"]]; // To change rightViewController
[self.revealViewController setFrontViewController:[storyBoard instantiateViewControllerWithIdentifier:@"HomeVC"] animated:YES]; // To change frontViewController
为此我们必须使用 SWRevealViewControllerSeguePushController
作为 segue class 其他 FrontViewControllers
感谢大家的帮助。