如何根据条件显示或不显示 NIB 创建的视图

Posted

技术标签:

【中文标题】如何根据条件显示或不显示 NIB 创建的视图【英文标题】:How to display or not a NIB-created view based on a condition 【发布时间】:2013-01-02 13:48:13 【问题描述】:

目前,我有以下情况:我有一个打开菜单的 nib 文件,并且有一个独特的主窗口。当这个 NIB 创建的视图完成启动时,窗口已经初始化并显示。

除了以正常方式启动应用程序之外,我还想以显示窗口和菜单的特定方式启动它。

换句话说,我需要能够在我的应用程序启动时定义一个条件,并基于该条件,我想使用普通视图/笔尖打开/初始化/显示应用程序,或者我不想显示它们(但我可能需要创建/初始化视图)。

任何想法我该怎么做?

谢谢

【问题讨论】:

【参考方案1】:

在 IB 中,进入检查器并关闭主窗口的“启动时可见”。 然后在您的 AppDelegate 中,检查要做什么:显示主窗口或让它保持不可见并显示特殊窗口!

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
    if (myCondition == TRUE) 
       //do something else...
     else 
        [[NSApp mainWindow] makeKeyAndOrderFront:nil];
    

【讨论】:

感谢@Daij-Djan。这帮助了我。

以上是关于如何根据条件显示或不显示 NIB 创建的视图的主要内容,如果未能解决你的问题,请参考以下文章

如何显示从单独的 NIB 文件加载的子视图

UITableViewCell nib 有几个约束场景

在显示之前从 nib 实体获取尺寸

从 nib 文件加载 UIView?

如何根据用户的角色创建具有不同显示的视图?

类未显示 NIB 的视图