'drawable'文件夹中的图像会自动调整大小?

时间:2014-12-03 19:32:58

标签: android

我在res / drawable文件夹中有一个1280x720px图像(不是drawable-hdpi,drawable-ldpi等文件夹)。但在运行时,大小为2560x1440px。这怎么可能? android会调整drawable文件夹中的图像吗?

以下是代码:

    Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.start_image_left);
    int h = bitmap.getHeight(), w = bitmap.getWidth();

我正在摩托罗拉Moto G gen2上进行测试。

2 个答案:

答案 0 :(得分:9)

您根本没有理由将位图放入根drawable目录中。它通常只应用于XML drawable。 drawable目录中的位图基本上将被处理为drawable-mdpi(按比例缩放其他密度)。

如果您的目标是在所有密度上使用相同像素大小的位图图像,则需要将其放在drawable-nodpi中。这将导致它不缩放。

答案 1 :(得分:0)

您说得对,Android会根据当前的设备配置自动缩放您的图片。但是,如果您不想要这种行为,可以创建位图资源文件,放入drawable文件夹并将其指向您想要使用的drawable

<bitmap xmlns:android="http://schemas.android.com/apk/res/android android:src="@drawable/yourDrawableHere" android:gravity="center" />

通过指定中心重力,无论如何,android都不会缩放你的图像。

要使用此位图资源文件,请在代码中按此检索

Drawable drawable = getResources().getDrawable(R.drawable.yourBitmaoResourceFileName);

相关问题