android studio中关于图片报错相关问题总结

不知道大家碰到过android studio 中图片相关的错误,我是将之前在eclipse上开发的项目移植到AS后发现一些错误,所以我把碰到的问题整理一下,做个总结。


1.图片格式更改过导致的无法正常编译


意思就是如果之前将一张jpg格式的图片 自己改为.png就会报错,因为as对图片要求很高,检测的严格。


大家可以看这篇文章com.android.tools.aapt2.Aapt2Exception: AAPT error: check logs for details_再见孙悟空的专栏-CSDN博客


最好的解决办法是将图片找出来删除掉。


还有一种网上最常见的解决方案


aaptOptions.cruncherEnabled = false

aaptOptions.useNewCruncher = false

在build.gradle加入上面这两句,意思是 禁止gradle检查png图片的合法性。


android {

compileSdkVersion 19

buildToolsVersion "23.0.1"

aaptOptions.cruncherEnabled = false

aaptOptions.useNewCruncher = false

defaultConfig {

   minSdkVersion 10

   targetSdkVersion 19


}


类似这样,加上能解决一部分问题。但是还有一些特殊的情况,即使加上上面这两句代码也没有用


2.拷贝demo 代码的时候 R文件错误导致出现这个问题。


android studio中关于图片报错相关问题总结

类似这种,我们拷贝其他项目文件的时候有时候可能会忽略这个,没发现  ,编译的时候不会报错,运行报错,当然这个和图片没啥关系,顺便提一下。

3.还有就是 和.9图片相关的错误

android studio中关于图片报错相关问题总结

类似这种的,都是.9图片本身有问题,导致的异常。


android studio里面本身集成了可以打开.9图片的编辑工具,不需要像eclipse那样去sdk下面去找draw9patch.bat了。


1. 如果一张图片不是.9图的话,图片的后缀名不要带有XX.9.png,这样在androidstudio上是非法,会报错。

2.如果一张图片是.9图,但如果这张图片不是完整的.9图,也就是说此图没有四个边的描点, Androidstudio仍然会报错。 报错内容如下:

Cannot Resolve Symbol R.(该错误下所有R会变红,当然所有R变红还有很多其他原因,比如xml、style、value、colors中存在错误都会出现该现象,而在Android Studio中是 不会提示具体那个文件夹的,需要自己检查)


AAPT err: ERROR:9-patch image xxxx(该错误并不会被编译器标红,这一点很不友好!)看到这一提示就证明是.9图片的问题了。


3.android studio 编辑.9图片界面选项

android studio中关于图片报错相关问题总结

Patch scale: 用来缩放右边预览区域的大小

 Show lock: 当鼠标在图片区域的时候显示不可编辑区域

 Show patches: 在编辑区域显示图片拉伸的区域 

 Show content: 在预览区域显示图片的内容区域


上一篇:datePicker不弹出,script70:没有权限


下一篇:springboot实现返回值国际化