我将制作一个带有多个视图和窗口的 OS X 应用程序。
它有几个屏幕——启动画面、登录/注册和主屏幕(等等)。
我尝试使用 NSWindowControllers。但是,它使用起来非常复杂,我很困惑。
视图/窗口转换的最佳体验是什么?
我将制作一个带有多个视图和窗口的 OS X 应用程序。
它有几个屏幕——启动画面、登录/注册和主屏幕(等等)。
我尝试使用 NSWindowControllers。但是,它使用起来非常复杂,我很困惑。
视图/窗口转换的最佳体验是什么?
我使用的主要模式如下:
New File
User Interface
Window
并将其另存为nameYouLike
New File
Cocoa
Objective-C class
子NSWindowController
类并保存为nameYouLikeDelegate
File's Owner
Class
为nameYouLikeDelegate
window
和需要 xib 的其他对象IBOutlet
nameYouLikeDelegate.h
在一些 init/show 方法中这样做:
- (void)showWindow {
if (!self.window) {
[NSBundle loadNibNamed:@"nameYouLike" owner:self];
}
[self.window makeKeyAndOrderFront:self];
}
以某种方式保存参考(fe 在AppDelegate
或NSWindowController
另一个窗口中):
nameYouLikeDelegate *fNameYouLikeDelegate;
现在,当您需要创建您的窗口时,您可以使用:
fNameYouLikeDelegate = [[nameYouLikeDelegate alloc] init];
并展示它:
[fNameYouLikeDelegate showWindow];
你想如何过渡?在您的情况下,可能没有必要在窗口之间进行转换。最好制作一个 NSViewController 并在窗口的子视图之间进行转换。您应该查看 Cocoa 的基础知识。
然后,您可以使用视图的 animator 属性。
[[self.view animator] setAlphaValue:0.0];