您的位置:首页 > 移动开发 > Android开发

关于开发兼容android 1.5项目时找不到资源图片问题

2011-09-17 11:12 330 查看
    先前自学android开发的时候,是做2.2的应用开发,把一些小图标文件随便放到drawable-hdpi,drawable-ldpi,drawable-mdpi三个目录中的某个,在代码中直接引用R.drawable.**这种方式就ok了.
    不过昨天在公司做一个android项目(最低支持1.5的api,但是在2.3.3之下开发的)时,发生了这样的问题,在代码检查中,确实是识别除了R.drawable.pic1这个图片,但应用在虚拟设备上运行时,却报错找不到资源文件,然后还告知了资源文件的id.看了下,这个id对应的就是那个pic1的图片.而这个图片就放在R.drawable-hdpi里面.所以我就很郁闷,明明有这张图片啊?
    后面有个对android很熟的同事过来跟我说android1.5在引用图片资源是去drawable文件夹里面找,android 2.2多出来的那三个文件夹在android 1.5中是无法准确识别的.
    晚上回来,上网查相关资料,找到了个跟我类似问题的文章:
    -------------------------------------------------------------------
Android1.6目录结构找不到res资源的问题
http://7090.iteye.com/blog/997482
建立的是1.6的目录结构,在res下面有drawable-hdpi,drawable-ldpi,drawable-mdpi三个文件夹,在这三个资源文件夹里面都放置了一个face.png的文件,但是打包的是target=android-3的apk ,就是打包成1.5,当运行在1.5的模拟器上时,就报错了,说找不到res下面的文件
Java代码 
android.content.res.Resources$NotFoundException 
,后来使用1.6的模拟器就可以正常运行了,看来还是向下兼容的问题,1.5的模拟器对应的R.java文件找的还是drawable这个文件夹里面的内容,1.6以上会根据屏幕大小找到合适的资源文件
    -------------------------------------------------------------------
    看样子,在开发android应用时,如果要兼顾老版本的android,需要单独建立一个drawable文件夹了.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐