gpt4 book ai didi

iphone - 将另一个 Nib 加载到 viewController 中

转载 作者:行者123 更新时间:2023-11-28 20:33:51 24 4
gpt4 key购买 nike

我有一个包含自己的 .nib 文件的 ViewController,我想将另一个 .nib 加载到这个 ViewController 中,这将是一个菜单...但是我只是不确定如何执行此操作并希望一些帮助。

在我向您展示代码之前,我将解释我所做的事情。

  • 我有一个带有 Nib 的 UIViewController,这是我的主视图。
  • 我创建了另一个 nib,它将成为一个显示为主视图 subview 的菜单
  • 我已将此 nibs 类更改为主视图的 UIViewController,以便它可以看到所有相同的 IBAction 和 socket 。
  • 然后我运行了下面的代码,试图将单独的 nib 作为 subview 加载,但是当我运行它时,另一个 nib 的 subview 没有显示....

        jumpBarPortraitNib = [[UIView alloc] initWithFrame:CGRectMake(0.0, 50.0, 320.0, 367.0)];



    // add jumpbar container to view
    [self.view insertSubview:jumpBarPortraitNib belowSubview:actionTabBar];

最佳答案

这里显然有些困惑。

一个 nib 只是一个包含(*)对象的存档,包括(通常)一个或多个 View 对象(在您的情况下为 UIView)。您不会“将 Nib 加载为 subview ”。您实例化 nib,可能将其交给 UIViewController 来拥有和管理它,并将 nib 中引用的 View 添加到您的 View 层次结构中。

您对第一行代码所做的全部工作就是创建一个具有给定帧大小的通用 UIView 实例,并将其插入任何 [self view] 中。在您编写的内容中没有任何内容实际上引用了 nib,即使您将 View 错误地命名为 nib。

对于您正在做的事情,我可能会选择以下两条路线之一:

  1. 在您的原始 nib 中将 View 添加为单独的顶级 View ,并将其连接到 IBOutlet。然后,您可以从设置为 nib 的文件所有者的通用 UIViewController 实例中轻松显示菜单。
  2. 有一个单独的 UIViewController 实例,它将只管理菜单 View ,您将使用它来使用 -initWithNibName: 实例化 nib 的内容,如@Aaron 所述。 (请注意,您不需要在外部设置框架;框架将作为 View 的属性存档在 Nib 中。)

*:不一定,但你可以这样想。

关于iphone - 将另一个 Nib 加载到 viewController 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11301838/

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