登录后连续2个ToS类型屏幕的设计模式

时间:2014-07-29 16:45:26

标签: ios

在我的iPad应用程序上成功登录后,我必须向用户提供2个连续的信息屏幕。这些屏幕只是使用UITextView的静态文本墙。在接受/接近第一个屏幕后,第二个屏幕必须紧跟在之后。

我已经考虑过为第一个屏幕设置一个模态segue,右上角有一个导航栏“next”按钮。在'nexting'之后,下一个屏幕可能是push segue,然后在'nexting'第二个屏幕后,我们可以将segue推入主要内容。

我不确定如何在ToS屏幕上处理取消/注销按钮。我不能将它放在导航栏的左上角,因为对于第二个ToS屏幕看起来很奇怪,因为它旁边会有一个后退箭头。

3 个答案:

答案 0 :(得分:1)

我建议屏幕底部有一个UIToolbar,上面有UIBarButtons。因此,请在两个页面之间保持导航,在底部取消/接受按钮。

答案 1 :(得分:0)

  1. 首次成功登录时的模态,以显示包含两个包含ToS文本的控制器的导航控制器。

  2. 点击第一个上的“接受”后,第二个被按下。

  3. 点击第二个上的“接受”后,模式会解散,您的应用会显示其主要内容。

答案 2 :(得分:0)

我使用的模式是拥有一个根"容器"使用Login作为根VC的NavigationController。

登录控制器然后询问"提出了合法的东西?"如果是,请将NavController的根视图控制器替换为我的第一个" app内容" VC。

如果不是,请用第一个" legal"替换NavController的根视图控制器。屏幕。第一个合法屏幕有第二个屏幕的模态显示(通过按钮),第二个合法屏幕有一个" ok"和"取消"纽扣。 Ok =用第一个" app内容替换NavController的根视图控制器" VC,Cancel = log user out并再次使用Login VC替换NavController的根视图控制器。

一些有用的代码:通过故事板ID字符串来获取故事板中的VC:

UIStoryboard* sb = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];

NSString* storyboardVcId = “IdFromStoryboard”;
UIViewController* vc = [sb instantiateViewControllerWithIdentifier: storyboardVcId];

[self.navigationController setViewControllers:@[vc] animated:NO];