关于AS制作点九图时Aapt2Exception: AAPT2 error

环境:

Android Studio 3.0.1

背景:

项目需要使用一个可拉伸的圆角矩形,拿到设计制作的图,自己动手打算制作成点九图达到拉伸自适应内容的效果

案场还原:

现学现卖,无非就是把图片放置在res/drawable目录下,右键双击图片选择creat 9-patch file,然后进行四边描黑线的工作,就像这样
关于AS制作点九图时Aapt2Exception: AAPT2 error
嗯很好,一起都很顺利,制作成功
但是
当年激动的打包编译的时候就会发现
关于AS制作点九图时Aapt2Exception: AAPT2 error
嗯?好像在哪见过,没错,你升级AS的时候就遇见过这个问题

解决方式

  • 方案一

无非就是在项目的gradle.properties中加入
关于AS制作点九图时Aapt2Exception: AAPT2 error
但是如果这样也不行,你可能也踩进了跟我一样的坑

  • 方案二

    请确保你制作的点九图绘制了四天边的黑线,就像我的问题
    关于AS制作点九图时Aapt2Exception: AAPT2 error

重新编译安装,嗯如果没毛病,恭喜你!
但是,于我来说。
又碰见这种情况
关于AS制作点九图时Aapt2Exception: AAPT2 error
点九图不能自适应包裹内容,即使设置了wrap_content,丝毫不见效果。其实问题也很简单(虽然我尝试了N种方式饶了M条路)

真相只有一个,即使wrap_content是自适应控件的内容,内容包括background和text,就是因为点九图过大,导致控件wrap_content了background,但是backgroud没有包裹text。
好嘛,如果你仅仅是想制作我这种效果的点九图,还有一种弯路可以绕。

使用shape,设置背景时设置成该shape


<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 圆角 -->
<corners
android:radius="5dp"/> //圆角自己调节
<stroke
android:color="@color/gray_d8d8d8"
android:width="@dimen/dimen_1"/>
<!-- 填充的颜色 -->
<solid
android:color="@color/white"/>
</shape>

关于AS制作点九图时Aapt2Exception: AAPT2 error
对于简单的点九图制作shape还是能管用,否则就找设计小姐姐重新制作点九图吧