代码之家  ›  专栏  ›  技术社区  ›  Madhup Singh Yadav

按下后退按钮时是否弹出多个视图?

  •  1
  • Madhup Singh Yadav  · 技术社区  · 15 年前

    我正在开发一个应用程序,在这个应用程序中,我在第一个屏幕上使用一个登录表单。如果用户是新用户,他会进入注册表单,然后他也会作为普通用户进入主页。

    现在我的问题是,“如果新用户按back-btn,我怎么能引导他返回登录页面,而不是注册表单以及两者之间的所有内容?”

    我应该换一下吗 navigationcontroller's viewControllers array ?

    3 回复  |  直到 15 年前
        1
  •  3
  •   monowerker    15 年前

    - (NSArray *)popToRootViewControllerAnimated:(BOOL)animated UINavigationController 将用户弹出到堆栈中的最后一个视图控制器。

    如果要使导航堆栈进入新的已知状态,可以使用 - (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated 数组中的最后一项将是活动项。

        2
  •  3
  •   David Maymudes    15 年前

    uiviewController对此有一些方法。你可以用

    - (NSArray *)popToRootViewControllerAnimated:(BOOL)animated
    

    弹出到顶视图控制器,或

    - (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
    

    一直弹出直到你到达一个特定的控制器,你知道在堆栈的某个地方…

        3
  •  2
  •   Gorm    15 年前

    也许你应该从另一个角度来考虑你的问题。

    报名表并不是一个真正的流程——它只是一个临时的、一次性的、强制性的插曲。

    如果你从A表报名 情态动词 视图,然后您可以在注册完成(或取消)时关闭模式视图,并正常移动到下一个视图控制器。

    这样,当您备份时,登录视图就是前一个视图。