iOS開發20 iOS開發中要注意的迴圈引用

2021-07-06 11:30:49 字數 515 閱讀 9769

類持有了mytimer,mytimer又持有了self,造成迴圈引用。

nstimer會持有物件,所以在刪除物件之前,需要將timer invalidate。

[ _mytimer  invalidate ];

_mytimer = nil;

typedef void (^myblock)();

@property (nonatomic, strong)   myblock block1;

乙個類屬性持有了myblock,這時,如果myblock再持有self,必然造成迴圈引用。

如果有迴圈引用,編譯器會提示警告。

如果物件沒有持有block物件,那麼不會產生迴圈引用。

如果物件持有了block物件,那麼在block引用self的時候這麼定義:

__weak typeof(self) weakself = self;

宣告delegate時要用assign(mrc)或者weak(arc),不要使用retain或者strong,會造成迴圈引用。

iOS開發 30多個iOS常用動畫,帶詳細注釋

inte ce coreanimationeffect nsobject reveal void animationrevealfrombottom uiview view void animationrevealfromtop uiview view void animationrevealfro...

IOS開發中字型大小

ios字型大小,字型大小的問題 uifont uifont parameters fontsize the size in points to which the font is scaled.this value must be greater than 0.0.fontsize實際的引數是poi...

IOS開發中如何區分IOS版本

當前系統支援的最小版本 iphone os version min required 當前系統支援的最大版本 iphone os version max allowed 比如用iphone os sdk 3.1.2 編譯的程式 iphone os version min required iphon...