Android-Android studio加载9.png图片报错

在用AS写代码,加入9.png图片以后,AS报错了,错误大致如下:

    :        button_bg.9.png malformed

AAPT err(Facade for 2075694):        Frame pixels must be either solid or transparent

   :         Found at pixel #1 along left edge.

一、问题现场:

我使用的9.png图片是从其他apk中解压出来的,不会美工的杯具只能“偷”图了,见笑!

然后把得到的9.png放到drawble路径下,然后AS就给我报了个错。


二、分析问题:

试想,从一个apk中解压得到的9.png图片,AS怎么会报错呢,既然其他开发者能使用,我个人感觉图片本身应该没有问题啊。

然后就尝试更新SDK的各种tools,然而问题依旧啊。

再问度娘,看了些帖子,有说重做9.png,有说9.png不能放在mipmap路径下等。各种无解的情况下,我决定试试重做。

在重新修改9.png图片之前,我再次认真的看了下AS报错给的信息,发现AS给的错误提示信息中 提到了边缘,然后就回忆起以前自己制作的9.png的经验,

是不是这张图片边缘没加黑线(点),因为有些9.png图片在使用PS制作以后,没有按照9.png图片格式处理。居然有了点思路,就用draw9patch打开原图看看:

      Android-Android studio加载9.png图片报错_第1张图片

打开一看,视乎感觉到这张9.png拉伸边缘没有黑线黑点什么,于是自己增加,修改后图如下:

    Android-Android studio加载9.png图片报错_第2张图片

增加完以后是这样的,是不是眼熟,自己做过9.png图片的朋友应该一样就能看出,当然这个时候我仍不能确定AS不会报错,然后我把修改后的图片放到AS中,

 然后就没有然后了,AS没有提示AAPT解析9.png出错。


 三、总结:

     虽然碰到这个问题,最后通过修改9.png图片以后,解决了问题,但是原本的APK中有这张图片,不会报错?Eclipse+ADT不会报错?又或者还有什么技巧?

       求知道 - -#

你可能感兴趣的:(Android-实践)