2011-10-24 21 views
54

Ho un'app Cocoa che ha un NSWindowController che controlla uno NSWindow con uno NSComboBox in esso. Niente di speciale, e ha funzionato bene fino all'aggiornamento a OS X 10.7.2. Ora ottengo la seguente eccezione, che si verifica solo una volta, quando viene caricata la finestra del controller della finestra. (Poiché il controller della finestra nella mia app rimane caricato, accade una sola volta per ogni avvio dell'app.) Successivamente, la messa a fuoco e lo sfocamento della casella combinata non lo attivano.Unlocking Focus su visualizzazione errata ((null)) in OS X 10.7.2

Qualcuno sa se qualcosa è cambiato in 10.7.2, e se sì come aggirare?

(Questo sta accadendo con Xcode 4.2.)

2011-10-24 11:30:21.649 MyApp[7934:707] Unlocking Focus on wrong view ((null)), expected <NSComboBox: 0x40083d6e0> 
2011-10-24 11:30:21.653 MyApp[7934:707] (
    0 CoreFoundation 0x00007fff8412d286 __exceptionPreprocess + 198 
    1 libobjc.A.dylib 0x00007fff88cdad5e objc_exception_throw + 43 
    2 CoreFoundation 0x00007fff8412d0ba +[NSException raise:format:arguments:] + 106 
    3 CoreFoundation 0x00007fff8412d044 +[NSException raise:format:] + 116 
    4 AppKit   0x00007fff8c76c1d5 -[NSFocusStack unfocusView:] + 194 
    5 AppKit   0x00007fff8c7e838e +[_NSAutomaticFocusRing showForView:] + 2545 
    6 AppKit   0x00007fff8cdbb4d1 __postActiveFirstResponderChanged_block_invoke_1 + 32 
    7 CoreFoundation 0x00007fff840ecf37 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 
    8 CoreFoundation 0x00007fff840ece96 __CFRunLoopDoObservers + 374 
    9 CoreFoundation 0x00007fff840c2159 __CFRunLoopRun + 825 
    10 CoreFoundation 0x00007fff840c1ae6 CFRunLoopRunSpecific + 230 
    11 HIToolbox   0x00007fff8c0d73d3 RunCurrentEventLoopInMode + 277 
    12 HIToolbox   0x00007fff8c0de58f ReceiveNextEventCommon + 181 
    13 HIToolbox   0x00007fff8c0de4ca BlockUntilNextEventMatchingListInMode + 62 
    14 AppKit   0x00007fff8c71e3f1 _DPSNextEvent + 659 
    15 AppKit   0x00007fff8c71dcf5 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135 
    16 AppKit   0x00007fff8c71a62d -[NSApplication run] + 470 
    17 AppKit   0x00007fff8c99980c NSApplicationMain + 867 
    18 MyApp    0x0000000100001682 main + 34 
    19 MyApp    0x0000000100001654 start + 52 
) 
+3

Sembra essere un bug nella nuova versione. –

+0

Una delle due risposte ha funzionato? Se è così, per favore accetta quello. – 11684

risposta

0

Si potrebbe provare a chiamare questo comando sul NSComboBox: setFocusRingType: NSFocusRingTypeNone Questo dovrebbe curare il problema, anche se non spiega la differenza tra i due stampa.