Objective - C 如何使用 View Controller iphone 管理多个视图
Posted
技术标签:
【中文标题】Objective - C 如何使用 View Controller iphone 管理多个视图【英文标题】:Objective - C How to manage multiple views with View Controller iphone 【发布时间】:2013-04-16 19:34:56 【问题描述】:我是开发 ios 应用程序的新手。我正在尝试开发一个多视图应用程序。我的疑问是如何使用 View Controller 管理多视图应用程序,我的意思是,我不想使用 Navigation Controller 或 Tab Controller。
我的想法是显示第一个视图以选择语言,之后,我想在表格视图中显示一些不同的配置文件。当您选择配置文件时,您会进入一个菜单,其中有一些不同的功能(在此菜单中,我可能会使用导航控制器)。
我的问题是我不知道如何管理这两个第一个视图。我不知道是否必须在 appDelegate 中声明它们,或者是否可以将它们嵌套在一起,我的意思是,我做第一个视图,当我按下按钮时,我声明新视图。在新视图中,当我在表格视图中按下一行时,我会创建另一个视图。
我知道这有点令人困惑,所以我希望你能很好地理解它。
编辑:
我想澄清一下,我没有使用故事板。我的主要疑问是如何处理所有 de view 控制器,我是否必须在 appDelegate 中声明所有这些控制器?或者我可以在每个控制器中声明每个视图吗?
【问题讨论】:
【参考方案1】:如果您正在使用情节提要,您可以使用 Segue 在视图之间导航,这样您就可以显示您的第一个视图,然后您可以将一个按钮绑定到下一个视图(通过控制在情节提要中拖动)。如果您想以编程方式进行转换,可以使用 performSegueWithIdentifier 方法。您可以使用相同的方法从 tableViewController 到下一个 viewController,方法是使用 tableViewController 的 didSelectRowAtIndexPath 委托方法中的 performSegueWithIdentifier 方法(即当用户点击单元格时)。
这应该让你开始。祝你好运!
编辑:
你真的应该使用故事板。这是这些天做事的方式。如果您拒绝,那么最好的方法是创建一个容器视图控制器来管理您的“子”视图控制器。您可以在此处找到有关执行此操作的信息,以及显示/删除子视图控制器所需的方法:
Custom Container View Controllers
【讨论】:
【参考方案2】:您可以使用带有“隐藏”属性的导航控制器。
self.navController.navigationBarHidden = YES;
【讨论】:
【参考方案3】:如果您想拥有两个不同的视图并在它们之间进行转换,您将需要使用模态呈现的 UIViewControllers。这里是Apple's Guide。
【讨论】:
以上是关于Objective - C 如何使用 View Controller iphone 管理多个视图的主要内容,如果未能解决你的问题,请参考以下文章
Table View 窗外屏幕 iOS Objective C
Objective C:何时在 App Delegate 中使用方法以及何时在 View Controller 中使用方法
Objective C - 将 JSON 数据从 Tableview 传递到另一个 View Controller