我已經開發了帶有UIRefreshControl的RSS源以刷新內容。但是每當我觸發UIRefreshControl時,它就會非常滯後。如果我使用Wifi,沒有任何延遲,但如果我的數據連接速度很慢,則會有很多延遲。UIRefreshControl滯後
有沒有人知道爲什麼會發生這種情況?
我已經開發了帶有UIRefreshControl的RSS源以刷新內容。但是每當我觸發UIRefreshControl時,它就會非常滯後。如果我使用Wifi,沒有任何延遲,但如果我的數據連接速度很慢,則會有很多延遲。UIRefreshControl滯後
有沒有人知道爲什麼會發生這種情況?
您正在主線程中下載並解析數據。這就是它懸掛的原因。永遠不要在主線程上做耗時的任務,它會阻止你的用戶界面。
更改:
-(void) refreshInvoked:(id)sender forState:(UIControlState)state
{
[self reloadFeed];
}
,如:
-(void) refreshInvoked:(id)sender forState:(UIControlState)state
{
dispatch_async(dispatch_queue_create("midhun", NULL), ^{
[self reloadFeed];
});
}
在你的UI代碼中間決不做同步聯網。 – 2012-12-27 09:18:24
@ H2CO3我該怎麼做呢?我的refreshControl只是調用刷新tableview的動作 – AmiiQo
將所有網絡置於後臺。異步加載數據,加載時刷新表視圖。 – 2012-12-27 09:21:42