2014-02-24 224 views
0

有關縮略圖製作的問題似乎被問到很多,每一次似乎都提出了很多不同的解決方案。根據我的經驗,所提供的答案都不是足夠的,所有答案似乎都有其缺陷。創建縮略圖。在飛行中或創建小圖像?

a)在重新調整大小

B)性能問題/慢渲染

因此,我想後有關,我希望有人一個很常見的功能需求問題內存問題可以協助。

'用戶使用活動生成報告並使用內部攝像頭拍攝相關照片。該報告與圖像路徑一起保存到SQLLite數據庫。用戶希望在將來的某個時間點以可滾動列表視圖查看報告。報告數量可能是1..100'

所以考慮到這些要求是我有問題如下

1)鑑於數據我還沒有找到充分調整的可靠/ performent /內存優化的方式在運行時將大尺寸圖像添加到給定的縮略圖,我應該在圖像捕獲時創建一個較小的圖像嗎?

2)如果你需要在一個ListView中顯示很多項目,你應該使用分頁還是應該可以在一個ListView中顯示100個項目?

感謝

回答

0

關於數2:你可以做的是先裝入一個子集(說出第30,這取決於你的ListView項的大小),並異步加載休息和它們添加到您的適配器。這會減少屏幕的加載時間。

0

1 /爲什麼你想重新發明輪子:)有些圖書館已經爲你做了,並做得很好。例如參見picasso或AQuery(還有其他庫)。

基本上,他們有一個縮略圖緩存SD卡/內部存儲器上的某處,以保持最後N個請求的縮略圖。

我不知道您是否將圖像數據保存在數據庫中,在這種情況下,您可能不得不調整其中一個庫來從數據庫而不是從文件加載圖像數據,因爲它通常是案件。

2 /爲什麼你想重新發明輪子:)有些圖書館已經爲你做了,並做得很好。例如,請參閱https://github.com/commonsguy/cwac-endless(和google瞭解更多)