gpt4 book ai didi

iphone - 将实用程序应用程序(2 个 View Controller )转换为选项卡栏应用程序

转载 作者:行者123 更新时间:2023-11-28 20:45:59 25 4
gpt4 key购买 nike

如标题所示,我构建了一个基于实用程序的应用程序。
该应用程序(目前)由 2 个 View Controller + 一个模型类层次结构组成。
问题是,因为我想向应用程序添加一些功能,所以我想将其转换为基于 TabBar 的应用程序。

作为第一步,我希望第一个 View 是标签栏的第一个 View ,而 flipSideView 是其他标签栏项目之一。

此类任务是否有任何“标准程序”/“杂货 list ”?
我相信你们中的一些人遇到过同样的问题,并且会喜欢一些关于“分割”应用程序的建议,以及在为主窗口创建新的 nib 文件后“连接它”(这是第一步吗?)

提前致谢。

最佳答案

我可能会开始如下(假设您正在使用 Interface Builder 并使用标准的 Xcode 实用程序应用程序模板):

  • 编辑 MainWindow.xib 文件并将 Tab Bar Controller 对象拖到 View 层次结构的顶层。
  • IB 中的默认选项卡栏 Controller 包含两个 View Controller 项目作为示例。单击第一个并将其类更改为您现有的主视图 Controller 类。
  • 您还可以通过添加 IB 已经添加到 View 层次结构中的关联标签栏项目,为主视图 Controller 项目设置图标和标签栏标题。
  • 对第二个选项卡栏项目执行相同操作,为 FlipsideViewController 设置类。
  • 从 NIB 文件中删除旧版本的主视图 Controller ,并从应用程序委托(delegate)中删除 IBOutlet 属性(您可能还在 dealloc 中引用了主视图 Controller ,应该将其删除)。
  • 在您的 App Delegate 中为 Tab Bar Controller 添加一个 IBOutlet 属性,如下所示(不要忘记合成该属性):

    @property (nonatomic,retain) IBOutlet UITabBarController *tabBarController;

  • 在 IB 中,将 App 委托(delegate)对象的 tabBarController 导出连接到 Tab Bar Controller 对象。

  • 最后,为了让选项卡栏 Controller 显示在主视图 Controller 的位置,将 application:didFinishLaunchingWithOptions: 中的代码更改为以下代码:

    [self.window addSubview:self.tabBarController.view];

这应该让基本的标签栏应用启动并运行,您可以向标签栏添加额外的 View Controller 。

由于您不再希望在 MainView 和 FlipsideView 之间切换,您可以从 MainViewController 中删除对 FlipsideViewControllerDelegate 的引用以及信息按钮及其 IBAction 方法 showInfo。同样,在 FlipeSideViewController 中,您应该从 View 及其 IBAction 方法中删除完成按钮,因为这些在与选项卡栏一起使用时不再有意义。

关于iphone - 将实用程序应用程序(2 个 View Controller )转换为选项卡栏应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6398161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com