2016-09-27 74 views
0

我的MainActivity中有一個recyclerView。它有12個圖像的項目。Recycler View在其主框架上工作太多

我的問題是,當我啓動應用程序是非常緩慢的,我總是得到錯誤:

I/Choreographer: Skipped 52 frames! The application may be doing too much work on its main thread.

但是,當我刪除從recyclerView寄託都工作正常圖像。

這可能是什麼目的,或者我該怎麼做,應用程序不是如此緩慢,當我這樣做與圖像。我只有30個參賽作品。

真誠丹尼爾

回答

0

正如你所說刪除影像解決您的問題,只是單純地調整你的繪製圖像和圖標。儘量減少分辨率並保留應用程序所需的圖像和圖標。另一種方法是使用多線程編碼。閱讀Java線程和異步任務以獲取關於多線程的更多細節。

0

如果沒有對代碼的深入瞭解,就不可能直接確定遇到的問題......這是一個廣泛的性能問題,可能會導致任何事件的累積。

也就是說,這裏有一些事情要考慮:

  1. 調整你的資源,並適當地擴展他們每個屏幕密度:https://developer.android.com/guide/practices/screens_support.html

  2. 如果你沒有準備好,使用ViewHolder您RecyclerView設計模式:https://developer.android.com/training/material/lists-cards.html

  3. 優化你的位圖加載(處理位圖關閉UI線程是你的問題一個很好的起點):https://developer.android.com/training/displaying-bitmaps/index.html

0

有與被在主線程上運行的進程密集型任務的代碼根本的問題,您應該運行在後臺線程即的AsyncTask這樣的過程。使用圖像庫Picasso還可以提高應用程序的整體性能。如果有任何查詢,請發佈代碼。

相關問題