我有大約100個圖像顯示在Android應用程序的幻燈片中。如何在android應用程序中縮小圖像?
什麼是我應該存儲在可繪製文件夾中的最小最佳大小。我想確認專家的意見,這是存儲這些圖像的正確地方。
我在活動代碼中有一個二維圖像數組來訪問這些圖像 - 一種硬編碼。請告知這是否是正確的軌道和最佳方式。
哪種類型的圖像最好放在應用程序的內部 - png/... - 以便視圖是最好的,大小沒有太大的膨脹。主要的緊縮是保持應用程序的小巧。這怎麼能最好地實現?
我有大約100個圖像顯示在Android應用程序的幻燈片中。如何在android應用程序中縮小圖像?
什麼是我應該存儲在可繪製文件夾中的最小最佳大小。我想確認專家的意見,這是存儲這些圖像的正確地方。
我在活動代碼中有一個二維圖像數組來訪問這些圖像 - 一種硬編碼。請告知這是否是正確的軌道和最佳方式。
哪種類型的圖像最好放在應用程序的內部 - png/... - 以便視圖是最好的,大小沒有太大的膨脹。主要的緊縮是保持應用程序的小巧。這怎麼能最好地實現?
使用.png文件。還可以使用https://tinypng.com/壓縮圖像。它有很大幫助!
編輯: 也閱讀本教程的Loading Large Bitmaps Efficiently
你可以閱讀你的可繪製這樣的:
Field[] drawables = com.example.appname.R.drawable.class.getFields();
for (Field f : drawables) {
try {
System.out.println("Drawable." + f.getName());
} catch (Exception e) {
e.printStackTrace();
}
}
這樣,你不需要任何硬編碼陣列和更新更簡單。也想到從一些服務器加載你的圖像,而不是嵌入到應用程序。
是的,使用PNG:s獲得最佳圖像質量。
根據你的問題你必須使用服務器映像,因爲如果你將使用可繪製文件夾中的100個圖像,那麼你的應用程序的大小將是巨大的。因爲每個圖像都有不同的高分辨率。
加上使用解析從服務器獲取圖像的一點,您將使用圖像加載器類,這將非常有效地顯示圖像。
另一種選擇是,您還可以使用SQLITE數據庫,在其中可以將圖像作爲imagename,imagepath,byte數組或圖像存儲爲非常容易檢索的圖像。
壓縮png圖像的更好工具+1票。 –