Android关于drawable和drawable-v24,mipmap-anydpi-v26引起的java.lang.NullPointerException

前言

经常我们放置图片一般默认drawable,mipmap-hdpi,mipmap-mdpi,mipmap-xhdpi文件夹下,这样的情况下我们运行起来的APP也不会出现什么问题,那么如果图片放在drawable-v24,mipmap-anydpi-v26文件夹下就会出现问题。这是由于在不同的drawable,mipmap文件夹用于为设备兼容性和不同的Android版本提供不同的屏幕密度造成的。


1.创建一个项目时自动生成res目录

drawable
drawable-v24
layout
mipmap-anydpi-v26
mipmap-hdpi
mipmap-mdpi
mipmap-xhdpi
mipmap-xxhdpi
mipmap-xxxhdpi


解决错误的最好方法是  我们打断点去看,常见的错误如下:

1.android.content.res.Resources$NotFoundException: Resource

2. Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int
android.graphics.Bitmap.getWidth()' on a null object reference



总结:

图片资源放到drawable-v24里面,导致7.0以下不能找到图片 不同的drawable文件夹用于为设备兼容性和不同的Android版本提供不同的屏幕密度。同理mipmap-anydpi-v26  API 26(安卓8.0)也是一样的道理,注意不同的文件对应的不同的版本。


猜你喜欢

转载自blog.csdn.net/u014133119/article/details/80756046