4

目前,我有一个项目,我想将登录视图与 SideBarRevealController 集成。

这是 SideBarRevealController 的链接:https ://github.com/John-Lluch/SWRevealViewController

我目前在呈现标准 UIViewController 的登录视图时遇到问题。

链接中有 3 个示例项目,但我将坚持第一个,用于 IOS。我在理解哪个视图控制器(SWRevealViewController 或我的登录视图控制器)应该是根视图控制器时遇到问题?

我认为 SWRevealViewController 应该是 rootviewcontroller,但我不完全确定。

我想我对如何使用登录视图和主视图设计应用程序流程的理解已经关闭.....

但是如果可能的话,我将如何允许在包含多个视图控制器的 SWREVEALVIEWCONTROLLER 类之前显示登录视图?

如果有任何问题或疑虑,请参阅链接并运行示例项目。我认为这对于想要使用侧边栏导航器功能的登录视图的每个人来说都是一个问题。

谢谢你的堆栈溢出!!!

4

4 回答 4

2

要在 SWRevealViewController 之前添加登录屏幕,您必须在 AppDelegate.m 文件中进行更改。

LoginView *lv = [[LoginView alloc]init];

SideMenuViewController *smvc = [[SideMenuViewController alloc]init];
UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:lv];
UINavigationController *menuVC = [[UINavigationController alloc]initWithRootViewController:smvc];

SWRevealViewController *revealController = [[SWRevealViewController alloc]initWithRearViewController:menuVC frontViewController:nav];
revealController.delegate = self;

self.menu = revealController;
self.window.rootViewController = self.menu;

这样,您将获得一个登录视图作为您的根视图,然后您可以从那里导航到下一个屏幕,您将在其中使用侧菜单操作。

于 2014-06-27T06:50:31.950 回答
0

@Hiren

SideMenuViewController *smvc = [[SideMenuViewController alloc]init];
UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:lv];
UINavigationController *menuVC = [[UINavigationController alloc]initWithRootViewController:smvc];

SWRevealViewController *revealController = [[SWRevealViewController alloc]initWithRearViewController:menuVC frontViewController:nav];
revealController.delegate = self;

self.menu = revealController;
self.window.rootViewController = self.menu;

所以你说的是 1v = 不管你的登录控制器的名字是什么?

于 2015-02-09T20:06:50.987 回答
0

我也在使用 SWRevealViewController 作为侧边菜单。我也有类似的要求,在哪里显示现有用户的登录屏幕和新用户注册屏幕。我解决这个问题的方法是使用多个故事板。一个非常干净和简单的解决方案。我有一个登录故事板和主故事板文件。在您的项目设置中,通过删除故事板键来禁用从故事板加载。现在在您的应用程序 didFinishLaunchingWithOptions 中,检查用户是否已经登录,然后加载主故事板,否则加载登录故事板。现在剩下的就是解散并显示其他故事,如果需要的话。

于 2013-09-24T08:18:11.247 回答
0

为了解决这个问题,我使用了以下步骤。

  1. 在 Storyboard 中创建一个类型为“SWRevealViewController”的 ViewController,并将其设置为“初始视图控制器”。
  2. 使用 segue "sw_front" 连接到 SWRevealViewController 的第一个视图不添加切换按钮来显示抽屉。在第一个视图上实现登录过程。
  3. 登录后,您要显示侧抽屉添加切换按钮的视图。
  4. 对于注销添加以下代码行。self.revealViewController().performSegue(withIdentifier: "sw_front", sender: self)

由于很难解释,我已经画了一个流程,我是如何实现它的。 在此处输入图像描述

于 2017-11-23T08:30:01.297 回答