Android中的点9图想必大家都非常熟悉了,能够指定背景图片的缩放区域和文本内容的显示区域,常见如QQ聊天界面的背景气泡这种文本内容不固定并需要适配的应用场景。

这里也给大家准备了一张图,详细介绍了一下“Android设计中的.9.png”,大家可以点击放大查看:

以前在使用Eclipse时候很少会出现点9图的编译错误问题,但是在转向Android Studio的过程中,你可能会遇到。比如你将Eclipse项目转化为Android Studio项目,或者在自己的项目中引入点9图,然后Clean编译,结果在Messages控台中出现了如下错误提示:

Error:Execution failed for task ':app:mergeDebugResources'.
> Some file crunching failed, see logs for details
  • 1
  • 2

crunching failed,根据错误信息,只能看出某些文件计算失败,如果不知道这里面的道道,还真找不到错误的根源。其实,这里就是点9图在Android Studio中的使用出现了问题。

Android Studio对点9图的规范要求十分严格,控制缩放区域和内容区域的四边黑线一条都不能少,如果缺少一条,就会出现上述错误。

Android Studio内嵌了SDK中的draw9Patch工具,可以直接打开点9图并编辑预览,只需要将引入的点9图四边黑线按要求补全,然后重新Clean一下,上述错误就不会出现了。

虽然在布局文件中,仍然会出现代码红色错误提示,但却不会影响正常编译运行。当然有强迫症的我对于这一点表示很纠结,如果大家有什么解决办法一定要留言告之,不胜感激。

补充一点,关于在Android Studio中点9图不规范的编译错误问题,网上也提供了另外一种解决方案,打开项目module目录下build.gradle文件,在buildToolsVersion语句下面添加如下两行代码:

aaptOptions.cruncherEnabled = false
aaptOptions.useNewCruncher = false
  • 1
  • 2

但是经过测试验证,除了错误信息提示变得更加清晰,并自动定位和打开错误图片之外,还是不能绕过编译这一关,仍然需要修改点9图片,补全点9图的四边黑线,不知大家有没有尝试过呢,欢迎交流讨论。

版权声明:本文为博主原创文章,未经博主允许不得转载。

关于Android Studio中点9图的编译错误问题的更多相关文章

  1. Android Studio 动态调试 apk 反编译出的 smali 代码

    在信安大赛的准备过程中,主要通过 Android Studio 动态调试 apk 反编译出来的 smali 代码的方式来对我们分析的执行流程进行验证.该技巧的主要流程在此记录.以下过程使用 Andro ...

  2. 使用Android Studio自带的NDK编译JNI

    /********************************************************************************** * 使用Android Stud ...

  3. Android Studio使用过程中遇到的错误

    > 错误1 1. This fragment should provide a default constructor (a public constructor wit 代码不规范,这个错误是 ...

  4. Android studio百度地图demo出现230错误,key校验失败

    转自daoxiaomianzi原文 Android studio 百度地图demo出现230错误,key校验失败 使用AndroidStudio导入Baidu地图的as版的demo,引入后,发现没有k ...

  5. android studio 2.2 使用cmake编译NDK

    Android studio 2.2 已经进入beta版本,新功能添加众多,NDK编程也得到了简化.官方博客介绍.本文介绍如何使用新版android studio调用 c++代码,为了超级通俗易懂,例 ...

  6. Android Studio安装和配置的方法 & 错误解决

    Android Studio终于到了1.0时代了,所以我也试着去学习了下如何使用它.上手确实比较麻烦,今天就分享下如何去下载并使用它. 一.下载 & 安装 大家可以去google给出的地址下载 ...

  7. 安装 Android Studio 2.3 详细过程及错误解决

    因为要开发Android5.0的缘故,抛弃了eclipse转到了Android Studio,第一次使用就是遇到了许多问题,终于是解决问题了,特意写一篇博文给各位要准备从eclipse转到Androi ...

  8. Android Studio代码自己主动检測错误提示

    Android Studio的代码自己主动检測的错误提示方式感觉有点奇葩.和Eclipse区别非常大,Eclipse检測到某个资源文件找不到或者错误,都会在Project中相应的文件前面打叉.可是An ...

  9. Android Studio集成crashlytics后无法编译的问题

    http://blog.csdn.net/zhuobattle/article/details/50555393 问题描述: 在用fabric集成后编译出现如下错误, Error:Cause: hos ...

随机推荐

  1. 03hive_DDL数据定义

    一. DDL数据定义 创建数据库 1)create database db_hive; 2)避免要创建的数据库已经存在错误,增加 if not exists 判断. create database i ...

  2. Dart语言学习(三)Dart数值型

    一.类型 数值型有 num,int, double  num a = ; a = 12.5; print(a); print(a.runtimeType); ; // b = 20.5; print( ...

  3. Navicat Premium 12安装、激活

    Navicat Premium 12安装 Navicat Premium 12激活

  4. javascipt——jQuery

    1.首先需要导入jQuery1.12.4.js文件,把文件和当前目录放同一目录下.在<body>中写上<script scr = 'jQuery1.12.4.js'><s ...

  5. KafKa集群安装、配置

    一.事前准备 1.kafka官网:http://kafka.apache.org/downloads. 2.选择使用版本下载. 3.kafka集群环境准备:(linux) 192.168.145.12 ...

  6. 入门chrome插件开发教程和经验总结,一篇就搞掂!

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_44244857/articl ...

  7. 通过WMI获取网卡MAC地址、硬盘序列号、主板序列号、CPU ID、BIOS序列号

    转载:https://www.cnblogs.com/tlduck/p/5132738.html #define _WIN32_DCOM #include<iostream> #inclu ...

  8. 【C语言】找出1000以内的水仙花数

    什么是水仙花数? 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153). 代码1: #include<stdio.h> ...

  9. python中,字符串前的u,b,r字符的含义

    1.字符串前加 u 例:u"我是含有中文字符组成的字符串." 作用: 后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时 ...

  10. Message Queue的使用目的

    为什么要用Message Queue   摘录自博客:http://dataunion.org/9307.html?utm_source=tuicool&utm_medium=referral ...