OSX:如何移动NSWindow而同时不移动其子Window
参考资料:
http://stackoverflow.com/questions/7657132/how-to-move-an-nswindow-without-moving-child-nswindows
问题:
应用程序有个主window,在主window里,新建了一个子window。
每当移动主window的同时,发现子window也跟着移动了。
如何实现:
移动主window的时候,子window不跟随移动呢?
解决办法:
移动window之前,先将子window移除,待window移到位后,重新恢复子window。
利用windowWillMove和windowDidMove这两个通知。
- (void)windowWillMove:(NSNotification *)notification
{
[window removeChildWindow:child];
}
- (void)windowDidMove:(NSNotification *)notification
{
if (![window inLiveResize])
[window addChildWindow:child ordered:NSWindowAbove];
}