2016-02-12 17 views
5

ho notato che in OSX, il NSTextView non può per un refference debole (se si tenta di collegarlo deboli, si otterrà)Perché NSTextView non può essere considerato un riferimento debole?

Cannot form weak reference to instance (0x600000122da0) of class NSTextView. It is possible that this object was over-released, or is in the process of deallocation. 

viene creato anche l'uscita da XCode come assegnare di default

Perché non può esserci un riferimento debole? Quale può essere il motivo?

+3

[questa domanda] (http://stackoverflow.com/questions/12882710/iboutlet-for-nstextview-in-a-arc-project) può essere quello che stai cercando. – meth

risposta

-3

Leggere attentamente il messaggio. Leggi oltre la parola NSTextView. Ti dice esattamente perché in questo momento non puoi creare un riferimento debole a NSTextView. Devi solo leggerlo.

Ad esempio, mentre dealloc è in esecuzione, non è più possibile creare nuovi riferimenti deboli perché l'oggetto andrà via e tutti i riferimenti deboli verranno impostati su zero. Cercare di assegnare l'oggetto a una variabile debole manterrà tale variabile nil, anche se l'oggetto non è nullo (ancora).

E questo non ha nulla a che fare con NSTextView.

+1

non è corretto, il problema è che NSTextView utilizza il proprio conteggio dei riferimenti e quindi non può essere utilizzato con riferimento debole –

3

controllare FAQ qui Transitioning to ARC Release Notes:

D: Quali classi non supportano riferimenti deboli?

A: Attualmente non è possibile creare riferimenti deboli alle istanze delle seguenti classi: NSATSTypesetter, NSColorSpace, NSFont, NSMenuView, NSParagraphStyle, NSSimpleHorizontalTypesetter e NSTextView.

ecc

Problemi correlati