Android .9图编译时遇到的问题(com.android.builder.internal.appt.v2.Aapt2Exception:AAPT2 error:check logs for )
一.前言
今天做闪屏页面,页面的图片设置的background,不同设备的手机会有所拉伸,图片又不能剪裁,只能做成.9图。
.9图的制作
1.把四个边预留好的一像素透明区域的png图片后缀改成.9.png,放入到Android studio 对应的图片包下
2.点击查看图片,切换9-Path 查看 ,并制作
3.现在来说一下.9图四个边的意义
右下-文字的放置区域
左上-图片的拉伸区域
告诉大家一个记住的小窍门, 顺时针“右下放,左上伸”。
所以就这个图而言它的四个角不会拉伸,文字也没有放在圆角处
- 点9图制作完,直接在ImageView 上setBackground() 就可以了
总结:“右下放,左上伸”
二.top-left coner pixel must be either opaque white or transparent .
今天.9图让设计做的 让他们四个边预留一像素,在四个边上点上对应的点,然后导出后缀名改成.9.png 就好了,可是放在studio 里面项目跑不起来,放生了错误
意思:点9图是错误的,不符合格式,问题出在了左上两边。
仔细检查真的出了问题
这个就没有问题了
总结:记住四个定点是不能有操作的,如果让设计师操作,这个一定要说清楚
三.error: found an invalid color.
以上问题是解决了,可是再编译还是出问题
去百度一查,原来.9 的图片出错了 没有黑线 ,仔细一查,.9图 就左上画了下,右下没画线,怪我没和设计师说清楚,自己重新画一下就好了
总结 :.9图的四个边都要画黑线
四 com.android.builder.internal.appt.v2.Aapt2Exception:AAPT2 error:check logs for details
让设计改完 又保存,一般AAPT2错误就是资源错误,刚放完点9图就是这个图片还是有问题,仔细查找,到底是什么问题
左边不足一像素。仔细看了看图片,应该是左上角的空格不足一像素,用studio点了点,结果好了,去找设计测量下这个空格,真的不足一像素
总结 :.9图的四个定点一定要预留出来一像素的方格,可以大于但不能小于
总结 :.9图的制作还是开发自己用studio制作吧,设计做会出现一很多问题,而且不好定位问题。