該組件由 NGUI example9 改編而成躯概;源代碼已經(jīng)上傳至GitHub
該教程主要做簡要分析,因?yàn)樵摻M件確實(shí)很簡單,所以想負(fù)責(zé)也沒法復(fù)雜利职。
功能:
根據(jù)配置的分組組數(shù)、每組cell的個數(shù)瘦癌,動態(tài)生成滾動試圖猪贪;點(diǎn)擊圖中紅色標(biāo)注的圖片(請吐槽我找的圖標(biāo)太丑,點(diǎn)擊它可以轉(zhuǎn)動哦)讯私,可以收放當(dāng)前組的cell热押。
腳本ShrinkGroupTableView分析
- CellNumberForSections 屬性意思為:每組配置多少cell;
- PrefabPathForSection 屬性意思為:組 header prefab 在 Resources 文件夾中的位置
- PrefabPathForCell 屬性意思為:每組 cell prefab 在Resources 文件夾中的位置
當(dāng)你設(shè)置完成這些參數(shù)時斤寇,運(yùn)行程序就可以生成你想要的 可收縮分組tableview桶癣。
簡要講解下注意事項(xiàng):
我實(shí)例化預(yù)制體所采取的方法為:
NGUITools.AddChild(parent,prefab);
為什么沒有采用 Instantiate(prefab,position,rotation)
呢? 因?yàn)檫@樣干娘锁,生成的tableview位置不對把滥!為什么莫秆?我也不知道~~
猜想:tableView , grid 间雀,NGUITools.AddChild 這一套方法都是NGUI的,可能做了內(nèi)部處理镊屎;而Instantiate是GUI的惹挟,自己沒控制好。
好了缝驳,按著源代碼操作连锯,就可以得到你想要的效果。當(dāng)然用狱,可以在腳本中為cell綁定事件运怖、添加現(xiàn)實(shí)數(shù)據(jù)。
想探索詳情齿拂,請下載源碼驳规,有請幫我設(shè)計更好的代碼。
潛水簡書很長時間了署海,一直沒有分享技術(shù)吗购、或是值得分享的東西医男,感覺無法何處開始。直到看了《自創(chuàng)四維》中的一句話 “人生永遠(yuǎn)都是測試版”捻勉;我才幡然醒悟镀梭,那我也試著寫寫自己所做的beta吧。
內(nèi)容如有不足之處踱启,請指正