事實上,他們(皮膚和itemRenderers)似乎都使用flash.graphics。*包進行繪製。我之前已經在皮膚和itemRenderer之間複製粘貼代碼,所以我真的不明白區別。我有更多的實施itemRenderers的經驗比皮膚,所以這可能是問題的一部分。謝謝,讓我知道。在Flex中,skin和itemRenderer有什麼區別?
2
A
回答
4
皮膚是一種可應用於各種UIComponent的圖形元素。容器可以有borderSkins,按鈕可以有各種上/下/下的皮膚。它們可以通過多種方式實現,包括使用繪圖API(「程序化皮膚」)或通過嵌入資產(「圖形皮膚」)。皮膚通常非常輕量級,可能只是Flash DisplayObject而不是Flex UIComponent,它更重量級但包含更多功能。
itemRenderer通常是基於列表的控件用來顯示項目的UIComponent。使用DataGrid/DataGridColumn時,通常也使用itemRenderer。大多數使用itemRenderer的組件會回收它們,這意味着它們會創建大約所需的數量以在屏幕上顯示,並且隨着用戶滾動瀏覽數據,相同的itemRenderer將被重新定位並獲取插入到其中的新數據。這就是爲什麼Lists和DataGrid可以支持大量數據的原因之一,以及爲什麼試圖用Repeater完成類似的事情會導致應用程序性能下降。
相關問題
- 1. flex mxml和actionscript-3有什麼區別?
- 2. Flex mx:DateField disabledRanges =「」和selectableRange =「」有什麼區別?
- 3. Flex庫和ActionScript庫有什麼區別?
- 4. Flex和Flash CS4有什麼區別?
- 5. Shockwave,Flash和Flex有什麼區別?
- 6. 在Flex中,'creationComplete'和'addedToStage'有什麼區別?
- 7. 有什麼區別`和$(Bash中有什麼區別?
- 8. flex中的組和容器控件有什麼區別?
- 9. flex中的target和currenttarget有什麼區別?
- 10. Flex中的PopUpButton,PopUpMenuButton和ComboBox控件有什麼區別?
- 11. 在Prolog中==和= =有什麼區別?
- 12. =和在mysql中有什麼區別?
- 13. `|。有什麼區別? `和`|| `在java中?
- 14. &和|有什麼區別?在Linux中?
- 15. |有什麼區別?和||在MATLAB中?
- 16. 〜/和〜在linux中有什麼區別?
- 17. *和。*在matlab中有什麼區別?
- 18. < - 和=在data.frame中有什麼區別?
- 19. 在PHP中!==和!=有什麼區別?
- 20. &&和||有什麼區別?在JavaScript中?
- 21. 在Ember.js中,[]和Ember.A([])有什麼區別?
- 22. 在JavaScript中,'\'和'\ n'有什麼區別?
- 23. !=和=!有什麼區別!在Java中?
- 24. 有什麼區別? :和||
- 25. &&和||有什麼區別?
- 26. 「/」和「/ *」有什麼區別?
- 27. 有什麼區別:。!和:r!?
- 28. ==和===有什麼區別?
- 29. Appender和〜有什麼區別?
- 30. $ @和$ *有什麼區別?