-1
我有一個巨大的圖像渲染(1024x25373p)切成99張1024x256p的圖像。 我試圖使用ListView,但沒有成功:它滾動時崩潰,沒有任何錯誤(免除一行說,過程停止)。 所以,我的問題是,我該如何渲染這個巨大的圖像?如何使用listview渲染巨大的圖像?
請注意,我試圖通過moagrius使用TileView,沒有成功(我不能讓它與導覽工作)
我有一個巨大的圖像渲染(1024x25373p)切成99張1024x256p的圖像。 我試圖使用ListView,但沒有成功:它滾動時崩潰,沒有任何錯誤(免除一行說,過程停止)。 所以,我的問題是,我該如何渲染這個巨大的圖像?如何使用listview渲染巨大的圖像?
請注意,我試圖通過moagrius使用TileView,沒有成功(我不能讓它與導覽工作)
作爲一個建議,
如果這是列表視圖,您可能不需要「1024x256p」這樣的較大尺寸的圖像。 imageView的實際尺寸可能會比這更少。因此,如果您嘗試直接加載這些圖片而沒有進行某些處理,則會造成 堆的浪費。
默認情況下,您需要根據您需要的實際尺寸縮放圖像。很好的exapmple和代碼已發佈在official doc
您需要釋放內存或清除在特定時刻在列表視圖中不可見的所有位圖。
您可以使用進度加載器將圖像加載到列表視圖中。然後根據滾動進行加載。
此外,您可以在清單中定義lager heap enable,儘管它不被推薦,但必須在高度可用內存的應用程序中執行。
機器人:largeHeap =「真」
爵士,郵編及logcat的 – 2015-04-04 09:28:48
顯示您的項目視圖佈局 – Xcihnegn 2015-04-04 09:31:18
你需要做的閱讀有關如何縮放圖像了很多。每張圖片需要大約1MB的RAM。所以99需要99MB左右!即使有很大的堆,你也無法加載這些堆。 – Simon 2015-04-04 09:37:08