我希望在我的基于Cocoa的应用程序启动时向用户显示启动画面(图片).这怎么可能?
首先,非常感谢.因为我的应用程序运行了一段时间,所以我想在应用程序运行之前显示启动.现在如果我在里面显示一个带有图像的窗口,那么如何运行该应用程序?如何确保应用程序在启动后显示?如何获得序列?
首先非常感谢你.并且我在applicationWillFinishLaunching方法中显示窗口使用orderFront,然后在applicationDidFinishLaunching中隐藏它:使用orderOut,现在我发现mainWindow没有显示和app终止,为什么?如何解决这个问题呢?谢谢!
解决方法
虽然彼得的答案最终是正确的(你应该重写你的应用程序以更快地启动),有时这不是一个实际的选择.例如,稍后在应用程序中加载代码可能花费太长时间(例如,数据获取应用程序),迫使其在启动时加载.如果您决定要显示启动画面,最简单的方法是在应用程序委托的applicationWillFinishLaunching:方法中显示它.在应用程序MainMenu.nib中创建一个启动窗口,并为引用该窗口的应用程序委托添加一个插座.然后,您可以将窗口放在applicationWillFinishLaunching的屏幕上:并将其隐藏在applicationDidFinishLaunching:中.请注意,主线程的NSRunLoop在此期间不会进行迭代,因此如果要更新启动屏幕(包括状态,进度条等),您需要自己管理这些重绘事件.