Mac 开发中如何设置 关闭 以及最小化 最大化按钮事件处理
Xcode默認的向導生成的工程的帶有關閉,最小化,最大化這幾個按鈕,
關閉按鈕的事件,最讓窗口最小化到Dock中,但當你點擊Dock卻無法恢復,而在Window菜單中也不會多一個與你程序同名的“X-X-X”菜單項,這樣的程序體驗不好,如果提到App Store肯定也是會被拒的。當然你如果在程序起動的時候,首先不點擊“關閉”按鈕,而是點擊最小化,你會發現菜單中的Window菜單欄中的最下面會多出一個與程序同名的“X-X-X”菜單項。這是程序自成生成的。當你點“X-X-X”菜單項時,程序就會恢復到原來的樣式。
觀察很多程序的處理方法:
(1)一個是點擊關閉按鈕后了讓其最小化到Dock欄中,系統不自動在Window菜單中添加“X-X-X”菜單項,注意此時窗口中屬性中的"Release When Closed"選項不能勾選,否則就會出錯。
?
-(BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag
?{
? ? [window makeKeyAndOrderFront:nil];
? ??return?YES;
}
?
?(2)一個方法是點擊關閉按鈕后直接讓程序退出,這個方法比較簡單。
?
//Make ourselves delegate so we'll receive actions as firstResponder
[NSApp?setDelegate:self];
?
//Quit the application when the main window is closed (seems to be accepted in Mac OS X)
[[NSNotificationCenter?defaultCenter]?addObserver:self?selector:@selector(closeWindow)name:NSWindowWillCloseNotification?object:mainWindow];
?
?
- (void)closeWindow
{
[NSAppterminate:self];
}
文字轉載:http://m.blog.csdn.net/blog/yuanya/24813975
轉載于:https://www.cnblogs.com/741162830qq/p/5034928.html
總結
以上是生活随笔為你收集整理的Mac 开发中如何设置 关闭 以及最小化 最大化按钮事件处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS-在团队开发过程中控制代码版本
- 下一篇: 欧拉(BC)