【问题标题】:How to hide a particular View controller on selected answer or button?如何在选定的答案或按钮上隐藏特定的视图控制器?
【发布时间】:2016-01-12 05:05:37
【问题描述】:

我正在开发一个应用程序,其中有 10 个问题要问。每个问题都在一个新的视图控制器上,即FirstQuestionViewController、SecondViewController 等等。现在有些问题是基于第二个问题的答案。基本上答案是通过“是”或“否”按钮回答的。如果第二个问题的答案是否定的,那么问题 8 和 10(ViewControllers) 应该是 hidden 否则它应该是 visible。我无法做到这一点。请帮忙。

【问题讨论】:

  • 如果viewcontroller可以用uiview代替???
  • 你为什么用一个视图控制器来回答一个问题?为什么不在一个视图控制器中解决所有问题?
  • bcs 你的显示和隐藏问题很容易通过使用视图解决。
  • 对每个问题使用 xib。它会很容易使用。
  • 使用故事板segue标识符和if else条件可能是可能的方式

标签: ios objective-c xcode cocoa-touch


【解决方案1】:

使用导航控制器。

为您的第一个问题使用视图控制器启动它,每次用户回答当前问题时,您都会将一个新的视图控制器推送到导航中以用于下一个问题。

你可以“推”任何一个:

  • 以编程方式(代码: self.navigationController.pushViewController(nextViewController, animated:true),或
  • Using segues。

在 Xcode 中,从“单一视图应用程序”模板开始。 接下来,转到情节提要,选择您唯一的视图控制器,然后转到菜单栏,然后​​选择Editor > Embed in > Navigation Controller。

请参阅导航控制器上的Apple's documentation。


关于如何从正常流程中选择性地隐藏 一些 问题,您应该在所有视图控制器(单例或struct 等)并结合逻辑,帮助您根据这些答案决定哪个问题(视图控制器)接下来要推送。

【讨论】:

  • 我用过导航控制器@NicolasMiari
【解决方案2】:

您可以使用“PushViewContoller”将一个控制器导航到另一个控制器。

[self.navigationController pushViewController:nextController animated:true];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 1970-01-01
    • 2015-03-03
    • 2016-10-07
    • 2015-04-09
    • 1970-01-01
    相关资源
    最近更新 更多