$NotFoundException 的解决方法

时间:2025-02-08 14:39:18

今天在把一个旧的工程导入ANDROID STUDIO中时,出现找不到资源的异常。


编译可以通过 ,但运行时出如下错误:

 Caused by: $NotFoundException: File res/mipmap-hdpi-v4/ from xml type drawable resource ID #0x7f03001a

相应的资源配置如下

midmap folder 中有三个文件,其中SELECTOR文件是  

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:andro>
    <item android:state_pressed="false" android:drawable="@mipmap/path_up" />
    <item android:state_pressed="true" android:drawable="@mipmap/path_pressed" />
</selector>

path_up.png ,path_pressed.png 也在该folder中。

对该selector的引用如下。

android:src="@mipmap/path"



经过多次尝试,发现mipmap远不如drawable来得智能,要把selector放到一个公用的folder中,而且PNG文件要放置在相应的分辨率的folder中。


解决方式如下:

android:src="@layout/path"

把挪到layout下,并且在相应分辨率的MIPMAP folder中放适合的PNG文件。也就是path_up.png ,path_pressed.png 。


这样解决以后,程序运行正常。