按下Dock上图示重新开启应用程式主视窗
当你在Mac上建立一个新应用程式时,有许多预设选项会被建立,但有一件事情预设值可能不尽理想,那就是当你将你的应用程式按下视窗键上的关闭
时,应用程式会被隐藏,只要在Dock上按下你的应用程式图示时,应用程式主视窗怎样也不会再出现了!
上图动画可以了解先前描述的问题,接下来该怎么解决它呢?当我们建立应用程式时,主视窗是继承NSApplication
,但很多细节已经被自动处理完成,不过可以从标头档中得知,应用程式有使用到NSApplicationDelegate
,然而一些相关资料就在NSApplicationDelegate
之中,当在Dock上按下自已应用程式图示时,会产生Delegate:
- (BOOL)applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag;
此时利用hasVisibleWindows:(BOOL)flag
来得知应用程式是不是被隐藏,如果是(YES),那就重新将它恢复:
//-----------start----------- - (BOOL)applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag { if(flag==NO){ [self.window makeKeyAndOrderFront:self];//重新将视窗显示于最前面 } return YES; } //------------end------------
短短的程式内容就完成这个预设功能的问题,要此细看Apple官方文件内容才有机会取得这项资讯(找了好久!!!)。