2012-11-05 62 views
1

我有幾個UITableViewUIScrollViews在我的應用程序。在初始加載時,tableview和scrollview平滑滾動。但是,在持續使用該應用程序大約7-10分鐘之後,滾動功能真的被黑掉了。我實現了延遲加載UITableView。我也有一個NSTimer在後臺進行輪詢。UITableView滾動黑客一段時間後

NSRunLoop *runloop = [NSRunLoop currentRunLoop]; 
pollTimer = [NSTimer timerWithTimeInterval:4 target:self selector:@selector(threadStarter) userInfo:nil repeats:YES]; 
[runloop addTimer:pollTimer forMode:NSRunLoopCommonModes]; 

這是停滯在UITableViews滾動的原因。

我該如何解決這個問題?

+0

我認爲主要是因爲定時器循環之後4秒鐘你的表數據將被重新加載,這就是爲什麼你的滾動hack ..可能是..請訪問此quiestion:-http://stackoverflow.com/questions/8787014/ nstimer-sometimes-freeze-when-app-doing-doing-heavy-computation –

+0

也訪問此鏈接:http://stackoverflow.com/questions/10862066/nstimer-is-pausing-a-while-when-uigesture-action - 執行 –

+0

你有任何有關'-threadStarter'性能的統計信息嗎? –

回答

1

導致應用程序響應速度較慢的這類問題的一個主要原因是「內存泄漏」

檢查您是否正確釋放細胞及其內容。如果您是新手,請參閱this post瞭解如何調試內存泄漏。

+0

我會檢查內存泄漏。但是如果它在內存方面存在問題,它會在調試時顯示內存警告,或者它會在某個時候崩潰,對。但是由於內存泄漏,我的應用程序從未崩潰 –