我创建了一个png-8图像作为九个补丁图像,只有大约16K,700 * 1200。 打包后,我检查了结果资源文件,它改为大约500K字节。我打开它,发现它改为PNG-24。我认为这是AAPT做到了这一点。有没有人知道为什么会这样? 来自doc
http://developer.android.com/guide/topics/graphics/2d-graphics.html#drawables
它只是说它可以做一些优化,将真彩色png转换为8位。我只是不知道为什么会发生相反的情况......
------------------------ UPDATE --------------------- < / p>
按照建议,我上传了problomatic图像
答案 0 :(得分:0)
经过调查,我发现png是一个8位9patch。我找到了一篇文章说
// If the image is a 9-patch, we need to preserve it as a ARGB file to make // sure the pixels will not be pre-dithered/clamped until we decide they are
可在AAPT源代码Images.cpp
中找到因此AAPT将8位png更改为真彩色png。但请记住前提条件:9patch图像。所以创建一个8bit 9patch png并不是一个好主意。