UITableView滑動(dòng)卡頓的原因以及優(yōu)化方法

一朦乏、原因:

1、cell中需要加載圖片及設(shè)置成圓角(layer.masksToBounds=YES)產(chǎn)生離屏渲染氧骤;
2呻疹、cell的重新布局;
3筹陵、cell的高度不確定刽锤;
4、cell中的控件的數(shù)量朦佩;
5并思、全局更新TableView;
6、使用了clearcolor语稠,無(wú)背景色宋彼,透明度為0;
7、使用addView給cell動(dòng)態(tài)的添加View;
8仙畦、實(shí)現(xiàn)了無(wú)用的代理方法输涕;
9、做了多余的繪制工作慨畸;
10莱坎、沒(méi)有預(yù)渲染圖像。

二先口、解決方案:

1型奥、加載網(wǎng)絡(luò)圖片使用異步加載,并緩存碉京;盡量不要設(shè)置圓角厢汹,采用帶圓角的圖片;
2谐宙、cell的布局填充操作比較耗時(shí)烫葬,一般創(chuàng)建好久布局好;
3凡蜻、提前計(jì)算cell的高度并緩存cell的屬性搭综;
4、盡量使cell的布局大致相同划栓,不同風(fēng)格的cell采用不同的重用標(biāo)識(shí)符兑巾,初始化添加控件,不適用的先隱藏忠荞;
5蒋歌、可以采用局部更新cell的內(nèi)容帅掘;
6、因?yàn)殇秩竞臅r(shí)較長(zhǎng)堂油,盡量使用顏色設(shè)置修档;
7、自定義cell府框,預(yù)先布局好cell的子視圖吱窝;
8、實(shí)現(xiàn)一些必要用到的代理方法迫靖;
9院峡、在實(shí)現(xiàn)drawRect:的時(shí)候,它的rect參數(shù)就是需要繪制的區(qū)域袜香,這個(gè)區(qū)域之外的不需要進(jìn)行繪制撕予。例如可以用CGRectIntersectsRect鲫惶、CGRectIntersection或CGRectContainsRect判斷是否需要繪制image和text蜈首,然后再調(diào)用繪制方法。
10欠母、在bitmap context里先將其畫(huà)一遍欢策,導(dǎo)出成UIImage對(duì)象,然后再繪制到屏幕赏淌。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末踩寇,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子六水,更是在濱河造成了極大的恐慌俺孙,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,383評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掷贾,死亡現(xiàn)場(chǎng)離奇詭異睛榄,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)想帅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)场靴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人港准,你說(shuō)我怎么就攤上這事旨剥。” “怎么了浅缸?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,852評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵轨帜,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我衩椒,道長(zhǎng)蚌父,這世上最難降的妖魔是什么蚕礼? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,621評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮梢什,結(jié)果婚禮上奠蹬,老公的妹妹穿的比我還像新娘。我一直安慰自己嗡午,他們只是感情好囤躁,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,741評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著荔睹,像睡著了一般狸演。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上僻他,一...
    開(kāi)封第一講書(shū)人閱讀 49,929評(píng)論 1 290
  • 那天宵距,我揣著相機(jī)與錄音,去河邊找鬼吨拗。 笑死满哪,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的劝篷。 我是一名探鬼主播哨鸭,決...
    沈念sama閱讀 39,076評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼娇妓!你這毒婦竟也來(lái)了像鸡?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,803評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤哈恰,失蹤者是張志新(化名)和其女友劉穎只估,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體着绷,經(jīng)...
    沈念sama閱讀 44,265評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蛔钙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,582評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蓬戚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夸楣。...
    茶點(diǎn)故事閱讀 38,716評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖子漩,靈堂內(nèi)的尸體忽然破棺而出豫喧,到底是詐尸還是另有隱情,我是刑警寧澤幢泼,帶...
    沈念sama閱讀 34,395評(píng)論 4 333
  • 正文 年R本政府宣布紧显,位于F島的核電站,受9級(jí)特大地震影響缕棵,放射性物質(zhì)發(fā)生泄漏孵班。R本人自食惡果不足惜涉兽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,039評(píng)論 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望篙程。 院中可真熱鬧枷畏,春花似錦、人聲如沸虱饿。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,798評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)氮发。三九已至渴肉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間爽冕,已是汗流浹背仇祭。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,027評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留颈畸,地道東北人乌奇。 一個(gè)月前我還...
    沈念sama閱讀 46,488評(píng)論 2 361
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像承冰,于是被迫代替她去往敵國(guó)和親华弓。 傳聞我的和親對(duì)象是個(gè)殘疾皇子食零,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,612評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒(méi)有地址/指針的概念1.2> 泛型1.3> 類(lèi)型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,093評(píng)論 1 32
  • 1.介紹UITableView UITableView 是 iOS 開(kāi)發(fā)中我們經(jīng)常使用到的一個(gè)控件之一 , 它是用...
    Shrock閱讀 750評(píng)論 0 1
  • iOS最常用的控件-UITableView困乒,基本用法就不多說(shuō)了,大家應(yīng)該都知道贰谣,當(dāng)然對(duì)于它的優(yōu)化大家也應(yīng)該都有所了...
    星星星宇閱讀 2,432評(píng)論 0 19
  • UITableView的復(fù)用機(jī)制 UITableView首先加載一屏幕(假設(shè)UITableView的大小是整個(gè)屏幕...
    Tamp_閱讀 2,517評(píng)論 6 24
  • 1.最常用的就是cell的重用吱抚, 注冊(cè)重用標(biāo)識(shí)符 如果不重用cell時(shí)百宇,每當(dāng)一個(gè)cell顯示到屏幕上時(shí),就會(huì)重新創(chuàng)...
    過(guò)半_e764閱讀 1,663評(píng)論 0 5