本文主要是介绍Android 实现背景图片不被拉伸的效果 9-patch图片 .9图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天碰到个需求,要求不同手机分辨率背景照片不能被拉伸,除了调用系统方法计算当前屏幕大小这个方法外还有一个就是9-patch图片,可以实现除了icon剩下的部位被缩放。
方法:资源文件右击找到9-patch,转为XXX.9.png照片
然后打开图片,进行编辑;
精髓就是这张图;
.9图原理,黑色横线作用
顶部横线代表水平延伸的时候,其他位置不变,此处横线做水平延伸的部分。
底部横线代表水平延伸的时候,内容在水平方向的显示区域。
左方竖线代表竖直延伸的时候,其他位置不变,此处横线做竖直延伸部分。
右方竖线代表竖直延伸的时候,内容在竖直方向的显示区域。
左侧绿色部分为可拉伸部分,右侧紫色为拉伸过后展示的效果图片;
写完最后在app的build.gradle中的android下面配置以下两项忽略;
aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false
实现的效果就是在不同分辨率下,List列表的背景icon不会被拉伸变形。
详细可参考原作者:
开发必备的图片格式——.9图的原理和陷阱-CSDN博客
这篇关于Android 实现背景图片不被拉伸的效果 9-patch图片 .9图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!