【问题标题】:Switching between views not working for iPhone 5.1 (XCode 4.3.2)在 iPhone 5.1 (XCode 4.3.2) 上无法切换视图
【发布时间】:2012-05-07 10:00:06
【问题描述】:

我正在尝试开发一个使用 4 个视图(基于视图的应用程序)的 iPhone 应用程序,并且我想从一个视图导航到另一个视图。例如,如果提交 ID 按钮自动向 UIViewController 发送消息以切换到视图 2,并且在视图 2 中选择一个单元格将加载视图 3,那将是理想的。

查看故事板截图here.

我不知道该怎么做,所以我尝试使用单独的按钮在视图之间切换,但这也不起作用,我不知道为什么。

你可以看看源代码which I've uploaded to Dropbox

【问题讨论】:

  • 您不能指望人们下载、解压缩并完成您的整个项目。你能在你的问题中包含更多细节吗?您尝试实现的视图切换代码是什么?您的故事板中有很多推送序列,但无法判断您的视图控制器是否嵌入在导航控制器中。如果你想以任意顺序在 4 个视图之间切换,你应该使用标签栏控制器吗?

标签: iphone ios uiviewcontroller


【解决方案1】:

首先,我建议在您的问题中发布您的代码。尽管我确信其他人很感激您提供了代码的 Dropbox 链接,但大多数人可能对将文件下载到他们的计算机、解压缩和启动项目(我就是其中之一)没什么兴趣。

话虽如此,让我们确保您清楚故事板和一般视图控制器层次结构原则。在您的故事板中,您有四个 UIViewController 被拖到您的工作区中。因此,您不是在切换单个 UIViewController 的视图,而是告诉它从 View1 切换到 View2 再到 View3 等等。您需要告诉视图控制器层次结构(在您的情况下,可能需要由 UINavigationController 管理),将视图控制器推入和/或弹出其堆栈。看来您在视图控制器之间设置了一些 segues。你在代码中调用performSegueWithIdentifier:sender: 吗?或者,您可以连接 Submit ID 按钮,以几乎相同的方式对 View Controller 2 执行 push segue。

一旦你有这个工作,你可以覆盖 prepareForSegue:sender: 以将信息从 ViewController1 发送到 ViewController2 等等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多