日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android各目录大小,Android 基础篇 — 放不同drawable文件夹中图片的大小

發(fā)布時間:2025/3/20 Android 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android各目录大小,Android 基础篇 — 放不同drawable文件夹中图片的大小 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

我們接著上篇文章Android 基礎篇 — 不同DPI取哪個本地文件夾中的資源

講,文末尾提到一個問題,為什么不同drawable文件夾中的圖片大小在終端設備會不一樣?

1 準備

在drawable-xhdpi文件夾中放入一張550 x 550的圖片pic2,然后運行。老規(guī)矩,我們先上測試代碼:

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.pic2);

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {

LogUtils.d("memory 1: " + bitmap.getAllocationByteCount());

} else {

LogUtils.d("memory 2: " + bitmap.getByteCount());

}

LogUtils.d("height: " + bitmap.getHeight());

LogUtils.d("width: " + bitmap.getWidth());

輸出日志如下:

memory 1: 2286144

height: 756

width: 756

我使用的測試機信息如下:

density: 2.75

densityDpi: 440

2 問題

那么問題來了,為什么圖片的寬高會變成756呢?回憶一下,xhdpi文件夾對應的density值為2,既然和手機2.75的值不完全匹配,猜測有可能會等比例縮放。

由此得出以下計算內容:

手機density / drawable文件夾density = 圖片最終大小 / 圖片原始大小

得出以下內容:

2.75 / 2 * 550 = 756.25 ≈ 756

為了驗證想法,我們再將圖片放至其他drawable文件夾中試試看,比如放入xxhdpi(dpi=3)中:

memory 1: 1016064

height: 504

width: 504

2.75 / 3 * 550 = 504.166666667

果然和猜測的是一樣。

最后又拋出一個問題:那資源圖片到底應該放入哪個文件夾中最合適呢?

3 結論

圖片最終大小 = 手機density / drawable文件夾density * 圖片原始大小

總結

以上是生活随笔為你收集整理的android各目录大小,Android 基础篇 — 放不同drawable文件夹中图片的大小的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。