我有一個UInavigationController和三個UIViewControllers。在調用popToRootViewController之前是否需要使我的NSTimer無效?
我們稱他們爲nav,vcA,vcB和vcC。
nav包含vcA作爲root,並推送vcB,然後vcC。
我在vcC有一個NSTimer,我調用了函數popToRootViewController。
NSTimer正在工作,即使我在vcA(nav的根目錄)。爲了vcC版本,我需要將其無效嗎?
我有一個UInavigationController和三個UIViewControllers。在調用popToRootViewController之前是否需要使我的NSTimer無效?
我們稱他們爲nav,vcA,vcB和vcC。
nav包含vcA作爲root,並推送vcB,然後vcC。
我在vcC有一個NSTimer,我調用了函數popToRootViewController。
NSTimer正在工作,即使我在vcA(nav的根目錄)。爲了vcC版本,我需要將其無效嗎?
當您實例化NSTimer時,您是否將self
(vcC)設置爲其目標?如果是這樣,那麼你需要使你的計時器無效,否則vcC將不會被釋放。我不知道你是多麼熟悉的弧度,但是當你設置VCC AS的NSTimer的目標,vcC's retain count is added by 1
如果計時器是
重複計時器是良好的編程習慣無效計時器。
單發定時器它使自己失效。
感謝提示 –
感謝您的解釋。我在** viewWillDisappear **方法中添加了invalidate方法 –