9
我有一個使用小型NSPopover顯示一些文本的10.7應用程序。用戶從來不打算與它進行交互。NSPopover竊取關鍵窗口,進行底層窗口閃存選擇。任何修復?
當NSPopover出現時,底層視圖丟失鍵狀態,選擇會改變顏色等。有沒有辦法讓這種情況不會發生?
我有一個使用小型NSPopover顯示一些文本的10.7應用程序。用戶從來不打算與它進行交互。NSPopover竊取關鍵窗口,進行底層窗口閃存選擇。任何修復?
當NSPopover出現時,底層視圖丟失鍵狀態,選擇會改變顏色等。有沒有辦法讓這種情況不會發生?
我這樣做:
[[NSNotificationCenter defaultCenter] addObserverForName:NSPopoverDidShowNotification
object:myPopover queue:nil usingBlock:^(NSNotification *note) {
[window becomeKeyWindow]; //Reclaim key from popover
[window makeFirstResponder:previousFirstResponder];
}];
謝謝 - 我在回答指出,previousFirstResponder。有道理的方式是您需要這個,所以您還必須註冊NSPopoverWillShowNotification並設置previousFirstResponder。 –
更多:這種方法對我來說並不完美 - 彈出窗口可以獲得關鍵點,所以有一個閃光燈。你也應該調用makeKeyWindow而不是成爲keyWindow –