1.先说遇到的问题
背景:一个列表页面的条目背景,由于存在拉伸所以,所以,决定让UI设计.9图片(初衷和出发点完全正确)
问题:在将UI提供的.9图片放到项目中时,遇到了各种各样的问题
1.编译报错:
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception:
AAPT error: check logs for details
2.图片报错:
Error:AAPT err(Facade for 1509295951): ERROR: 9-patch image \\?\D:\workspace\demo\TicketQuery\app\src\main\res\drawable\icon_test_station.9.png malformed.
AAPT err(Facade for 1509295951): No marked region found along edge.//问题点
AAPT err(Facade for 1509295951): Found along top edge.//问题点
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Error: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT error: check logs for details
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 3s
3.图片被挤压
![](https://img.haomeiwen.com/i5451204/459a1cad209cc8e6.png)
![](https://img.haomeiwen.com/i5451204/a55e422cafc27ec8.jpg)
2.解释.9图的制作及使用
1.9patch制图官方文档:(https://developer.android.com/studio/write/draw9patch.html)
2.图例说明:
1.Android Studio 中,右键需要使用的.png
![](https://img.haomeiwen.com/i5451204/b59dd2bc409ad808.png)
2.选择.9图的保存位置(这里有坑)
![](https://img.haomeiwen.com/i5451204/e309cc40f87e1787.png)
3.制作说明
![](https://img.haomeiwen.com/i5451204/e08ad451ed0ca23b.png)
1.也就是上边一条边,画黑线的部分是指定横向拉伸区域,非黑线区域不拉伸
2.也就是左边一条边,画黑线的部分是指定竖向拉伸区域,非黑线区域不拉伸
3.也就是下边一条边,画黑线的部分是横向内容显示区域,非黑线区域不显示内容
4.也就是右边一条边,画黑线的部分是竖向内容显示区域,非黑线区域不显示内容
5.竖向拉伸效果图
6.横向拉伸效果图
7.横向+竖向拉伸效果图
3.注意事项:
1.四条边,均必须有一个点(有坑,经过测试,1.上边和左边必须有点,下边右边非必须)
2.四条边,均必须有且仅有1个点(有坑,经过测试如图,左边有2个点,也没问题)
4.9patch图的使用
1.常规意识里面,.9图是放在drawable文件夹下面使用的,但是,我把UI设计师给的.9图片放到drawable文件夹,使用时,却出现了问题中的挤压情况,反复试验后才知道:
.9图缩放的文件夹是和制作.9图 的原始文件有关系的,比如我这个产生挤压的.9图,设计师给我的是xhdpi也就是2倍图,而我将它生成.9图后,放到了drawable文件夹,那势必会产生挤压(小分辨率的图片被大分辨率的机型加载),所以箭头变形了
知晓了这些开篇中的问题也就迎刃而解:.9图制作的不对以及原图+.9图对应文件夹放置的不对
针对此次问题:
1. 9patch图,标准用法是放到drawable文件夹中,所以,制作.9图,使用mdpi也就是1倍图制作就好
以上内容9patch=.9
参考文章:
https://blog.csdn.net/qq_26585943/article/details/68070043?tdsourcetag=s_pcqq_aiomsg
网友评论