国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

RunLoop優化加載大量圖片的卡頓問題

2019-11-09 15:09:07
字體:
來源:轉載
供稿:網友

經典問題:在tableView的cell上加載高清大圖,tableView上有很多這樣的cell,也就是說 頁面展示的時候,要展示大量高清大圖。

普通的寫法會造成刷新UI耗費大量時間,使主線程阻塞。給用戶直觀的體驗就是頁面卡頓

所以這里為了解決這個問題,使用runloop,在runloop進入等待之前的這段空閑時間刷新UI,這樣做會使刷新UI的時機稍微向后挪了一點時間,但卡頓問題也不會有稍微提一下runloop ,runloop 最直觀的作用:

1、保證程序的運行,不退出。

2、負責事件的監聽(主要包括:觸摸(UI界面的交互)、時鐘事件、網絡事件)。

3、負責渲染屏幕上的所有UI(一次runloop循環需要渲染屏幕上所有UI變化點)。

runloop 的模式(runloop有兩種模式):

1、默認模式 NSDefaultRunLoopMode 蘋果推薦將定時器等放到這個模式下

2、UI模式 NSRunLoopCommonModes 該模式通常用于界面刷新、UI交互等

兩種模式有優先級的問題,第二種模式的優先級要高,所以定時器放在第一種模式下,當用戶和UI進行交互的的時候,定時器是不工作的,結束后才會馬上進入定時器事件那么問題來了,刷新UI要放在哪?

毫無疑問,肯定是主線程,但是還有一個問題,刷新UI 如果也是一個耗時操作,那么也會有卡頓問題

基于以上問題,提出運用runloop優化卡頓問題。

使用runloop優化卡頓的主要難點,在于如何監聽runloop的運行狀態,以及方法的保存和runloop任務的執行

runloop的運行狀態可以通過CoreFoundation解決,CoreFoundation是一個c語言的庫。下載地址:http://download.csdn.net/download/u011604049/9751591當初上傳的時候 選了個1分的下載分,沒分的直接聯系我,我發給你

好了,原理就是上面的原理,代碼有空我再發出來,著急的可以直接私我。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岳阳市| 弥勒县| 微博| 正安县| 常州市| 聂荣县| 洱源县| 翁源县| 禄劝| 黎城县| 无棣县| 延边| 红河县| 竹山县| 沁阳市| 石狮市| 旅游| 赤水市| 穆棱市| 八宿县| 和龙市| 海兴县| 汕尾市| 湟中县| 新郑市| 秭归县| 彭泽县| 广元市| 宣威市| 赫章县| 鸡东县| 格尔木市| 称多县| 筠连县| 珠海市| 昌吉市| 广河县| 齐齐哈尔市| 五台县| 濮阳县| 光泽县|