Android中的点9图想必你们都很是熟悉了,可以指定背景图片的缩放区域和文本内容的显示区域,常见如QQ聊天界面的背景气泡这种文本内容不固定并须要适配的应用场景。ruby
这里也给你们准备了一张图,详细介绍了一下“Android设计中的.9.png”,你们能够点击放大查看:bash
之前在使用Eclipse时候不多会出现点9图的编译错误问题,可是在转向Android Studio的过程当中,你可能会遇到。好比你将Eclipse项目转化为Android Studio项目,或者在本身的项目中引入点9图,而后Clean编译,结果在Messages控台中出现了以下错误提示:markdown
Error:Execution failed for task ':app:mergeDebugResources'. > Some file crunching failed, see logs for details
crunching failed,根据错误信息,只能看出某些文件计算失败,若是不知道这里面的道道,还真找不到错误的根源。其实,这里就是点9图在Android Studio中的使用出现了问题。app
Android Studio对点9图的规范要求十分严格,控制缩放区域和内容区域的四边黑线一条都不能少,若是缺乏一条,就会出现上述错误。工具
Android Studio内嵌了SDK中的draw9Patch工具,能够直接打开点9图并编辑预览,只须要将引入的点9图四边黑线按要求补全,而后从新Clean一下,上述错误就不会出现了。布局
虽然在布局文件中,仍然会出现代码红色错误提示,但却不会影响正常编译运行。固然有强迫症的我对于这一点表示很纠结,若是你们有什么解决办法必定要留言告之,不胜感激。测试
补充一点,关于在Android Studio中点9图不规范的编译错误问题,网上也提供了另一种解决方案,打开项目module目录下build.gradle文件,在buildToolsVersion语句下面添加以下两行代码:gradle
aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false
可是通过测试验证,除了错误信息提示变得更加清晰,并自动定位和打开错误图片以外,仍是不能绕过编译这一关,仍然须要修改点9图片,补全点9图的四边黑线,不知你们有没有尝试过呢,欢迎交流讨论。ui