• 在Android开发中替换资源图片不起作用的解决方法


    现象

    在android开发中,经常会需要替换resdrawable中的图片,打开reslayout下的文件预览布局页面发现图片已经被替换,但在模拟器或者真实机器上运行时发现该图片并没有被替换,还是使用的是原来的资源图片。

    原因

    在开发过程中,由于使用模拟器测试了程序,在首次运行后会将res文件夹下的图片资源文件(如drawable-hdpi、drawable-ldpi和drawable-mdpi)拷贝到bin文件夹下。在替换资源图片后,eclipse并不清楚是否有图片改变,所以会使用原来bin下的res文件夹中的资源文件进行打包,而图片用的还是第一次eclipse所拷贝进去的文件,所以当运行程序后会发现替换资源图片在程序中没起作用。

    解决方法

    把项目Clean一下就可以了。也可以手动删除bin目录下的res目录。

    其它补充

    Eclipse中的Android项目bin目录文件结构:

    ./classes/                          java文件编译出来的class文件

    ./dexedLibs/                     项目中引用的jar包

    ./res/                                资源文件,只包含图片不包含xml文件

    ./AndroidManifest.xml     复制自上层目录

    ./classes.dex                   Android系统中可以在Dalvik虚拟机上直接运行的文件格式;java源代码经过ADT的复杂编译后转换成Dex文件

    ./*apk                              最终生成的文件,可以直接安装到手机

    ./resources.ap_              资源文件打包成的中间文件

  • 相关阅读:
    初识现代软件工程——构建之法
    个人作业3——个人总结(Alpha阶段)
    结对编程2
    个人作业2——英语学习APP案例分析
    结对作业1
    java四则运算
    个人附加作业
    个人作业3——个人总结(Alpha阶段)
    结对编程2——单元测试
    个人作业2——英语学习APP案例分析
  • 原文地址:https://www.cnblogs.com/tang-skillhunter/p/8637895.html
Copyright © 2020-2023  润新知