我將一些UIButtons移出屏幕,當我瀏覽子視圖時,我仍然可以列舉它們。我想「釋放」它們以使腳本運行得更快,但是如何在iOS上使用ARC來執行此操作?如何釋放iOS上使用ARC關閉屏幕的對象?
1
A
回答
0
感謝您對您所有的迴應,但正確回答我的問題(在釋放實例對象。我應該把在問題...對不起你們)如下:
for (int x =0; x<[toBeDeletedArray count]; x++) {
UIButton* __weak butt = (UIButton*)[toBeDeletedArray objectAtIndex:x];
[butt removeFromSuperview];
butt = nil;
}
關鍵的一點是要申報爲「__weak」,那麼它可以被設置成零。
感謝您的靈感!
0
使用ARC,您不能調用dealloc,release或retain,儘管您仍然可以保留並釋放CoreFoundation對象。不幸的是,使用ARC時不能手動釋放對象。你嘗試過弱或強的參考對象嗎?
1
當您處於ARC之下時,您只需「發佈」一個對象即可將其引用設置爲nil
。
就你而言,除非你將所有這些UIButton
都保存在一個數組或其他地方,否則你只需要將它們從超級視圖中刪除。當然,如果你再次需要它們,你將不得不重新添加它們
0
我懷疑你會看到任何性能影響,除非你有太多的按鈕,或者你的枚舉塊每個按鈕需要大量的時間。
無論如何,你可以刪除元素從它的上海華與...
[view removeFromSuperView];
相關問題
- 1. 如何使用ARC處理iOS中的自動釋放對象
- 2. 屏幕關閉時釋放WAKELOCK
- 3. 使用ARC時釋放對象
- 4. iOS關閉屏幕iPad
- 5. 如何在使用GNU屏幕時關閉emacs(或vi)後關閉屏幕?
- 6. 關閉睡眠後關閉屏幕並在屏幕上打開
- 7. 如何「釋放」ARC上的UIWebView
- 8. 關閉屏幕
- 9. 如何平滑縮放IOS中的圖層以保持屏幕上的對象?
- 10. 屏幕關閉時部分喚醒鎖釋放
- 11. WakeLock沒有釋放和屏幕不關閉
- 12. 以編程方式關閉iOS屏幕
- 13. ios如何在用戶單擊按鈕時關閉屏幕
- 14. 播放視頻屏幕關閉
- 15. 如何在Android的佈局屏幕上放置對象?
- 16. 如何使用ARC下的塊完成處理程序釋放對象?
- 17. 如何使用屏幕對象訪問屏幕上的字段(UiApplication.getUiApplication()。getActiveScreen())
- 18. 而屏幕關閉
- 19. Android關閉屏幕
- 20. 禁用屏幕關閉
- 21. 關閉/關閉屏幕的Android通知
- 22. 如何在屏幕上移動對象
- 23. 如何在iPod的屏幕關閉時開始播放聲音?
- 24. 使用ARC的iOS應用程序未釋放內存
- 25. iOS - NSMutableArray removeAllObjects不釋放內存(ARC)
- 26. 使用解析時在iOS中關閉登錄屏幕
- 27. 關閉屏幕觸摸屏幕上的MPMoviePlayerController
- 28. 在Android中使用PARTIAL_WAKE_LOCK關閉屏幕
- 29. iOS:何時釋放成員對象?
- 30. ARC和非ARC框架 - iOS - 適當的釋放不工作?
其實我只是嘗試設置按鈕=零,我得到一個錯誤,說我需要聲明它強大,讓這個。我該怎麼做? – minjiera 2012-08-01 11:42:16
@minjiera你現在如何聲明按鈕? – 2012-08-01 12:59:00
我在一個函數內創建了它們。當用戶在屏幕上進行某些操作時,會多次調用此功能。但是ARC會保留它們直到我改變視圖... – minjiera 2012-08-01 17:22:07