我开始从市场崩溃报告界面看到一组奇怪的堆栈跟踪。我被告知不存在可绘制的资源。有问题的xml:
<ImageView
android:layout_width="13dip"
android:layout_height="12dip"
android:src="@drawable/foo"
/>
使
java.lang.RuntimeException:
Unable to start activity ComponentInfo{com.me.app/com.me.app.MyActivity}:
android.view.InflateException: Binary XML file line #51:
Error inflating class <unknown>
...
Caused by: android.content.res.Resources$NotFoundException:
File res/drawable-hdpi/foo.png from drawable resource ID #0x7f020166
at android.content.res.Resources.loadDrawable(Resources.java:1732)
at android.content.res.TypedArray.getDrawable(TypedArray.java:601)
at android.widget.ImageView.<init>(ImageView.java:118)
at android.widget.ImageView.<init>(ImageView.java:108)
Caused by: java.io.FileNotFoundException:
res/drawable-hdpi/foo.png
at android.content.res.AssetManager.openNonAssetNative(Native Method)
at android.content.res.AssetManager.openNonAsset(AssetManager.java:417)
at android.content.res.Resources.loadDrawable(Resources.java:1724)
现在“foo.png”存在于我的“drawable”和“drawable-hdpi”文件夹中。多年来我还没有触及这些抽屉中的任何一个 - 不知道为什么这个错误开始出现?发生在一系列设备上,Droids,Nexus Ones等
由于
答案 0 :(得分:2)
尝试将foo.png放在其他可绘制文件夹中,即mdpi,xhdpi和xxhdpi。可能会有所帮助。
答案 1 :(得分:0)
您可以尝试以下方法:
1-如果您正在使用Eclipse进行开发,请从调试菜单中尝试“Project Clean”。如果您在Intellij,请尝试“构建”项目。
2-删除并读取foo.png资源。删除后,尝试重新生成R然后读取。
3-将foo.png重命名为其他内容并查看其工作原理。
4-尝试删除R文件,因为它会自动生成并可能解决您的问题
据我所知,问题在于您项目的R文件。