我有一個UIScrollView,其中我加載了大量UIImage的水平。哪一個會更好?僅在UIScrollView的可見區域加載圖像並卸載其他不可見的圖像?或者將圖像加載到UIScrollview的可見區域,而不是卸載最初位於可見區域且現在隱藏的圖像?爲子視圖使用優化UIScrollView
1
A
回答
1
如果您想利用可重用性的內置好處,則應該使用UITableview
或UICollectionView
而不是UIScrollView
。請參閱this教程獲取水平表格視圖。在每個單元上添加圖像。它會提高性能並減少內存。
1
可能是最好的優化將重新使用圖像視圖。一種解決方案是使用UICollectionView
而不是UIScrollView
,另一種方法是手動重用UIScrollView
子視圖。看看這library它重用scrollView
子視圖,並有API類似於UITableView
。
1
我在這個時代的推薦是使用UICollectionView,並允許它爲您處理動態單元格加載。它具有非常靈活的單元機制,類似於UITableView中的單元機制。
1
iOS在內存變低時卸載UIImages,並根據需要自動重新加載它們。但是,爲了避免首先進入低內存環境,我建議您釋放任何不需要的圖像,前提是由於重新加載而造成的性能降低是可以接受的。請注意,UIImage方法imageNamed:緩存圖像,因此您可能需要使用其他init方法之一。 (也就是說,如果你真的想使用UIScrollView。正如這裏指出的那樣,有更好的解決方案。)
相關問題
- 1. 使用大量子視圖優化UIScrollView
- 2. 優化UIScrollView
- 3. 使用UILongPressGestureRecognizer對UIScrollview的子視圖
- 4. 優化UIScrollview尋呼
- 5. 添加UIViewController作爲UIScrollView的子視圖
- 6. UIButton作爲複雜的UIScrollView子視圖
- 7. 作爲子視圖的UIScrollView不滾動
- 8. 將uiscrollview子視圖調整爲全屏
- 9. UIScrollView子視圖和setNeedsDisplay
- 10. UIScrollView與子視圖縮放
- 11. UIScrollView的幻象子視圖
- 12. uiscrollview子視圖不滾動
- 13. UIScrollView子視圖縮放
- 14. UIScrollView觸及vs子視圖
- 15. UIScrollView /子視圖的代表
- 16. Refactor Me:Backbone.js子視圖渲染優化
- 17. 在UIScrollView中加載優化圖像
- 18. 使用albumart優化列表視圖
- 19. UIScrollView - 阻止UIImageView作爲UIScrollView的子視圖被拖出屏幕
- 20. UIScrollView子視圖調整爲超視圖框架
- 21. UIViewContentModeScaleAspectFit不適用於UIScrollView子視圖UIImageView
- 22. UIScrollView不適用於子視圖
- 23. 爲couchdb視圖優化SQL查詢
- 24. 的UIScrollView不切換圖像子視圖
- 25. 如何使子視圖調整爲UIScrollView ContentSize?
- 26. UIScrollview - 如何使子視圖更小,因爲它滾動屏幕
- 27. 使UIScrollView中的UILabel子視圖成爲firstResponder
- 28. 查詢/數據庫優化:如何優化? (我應該使用物化視圖?)
- 29. 觸摸UIView子類的事件作爲UIScrollView的子視圖
- 30. 管理優化@視圖