您当前的位置:首页 > 计算机 > 编程开发 > 安卓(android)开发

Android点9图片被放大的问题

时间:02-08来源:作者:点击数:

原始图片如下:

在这里插入图片描述

点9图片制作如下:

在这里插入图片描述

这里拉伸区域都在正常的位置,4个圆角不会被拉伸,但是显示到手机上时发现4个圆角模糊了,一时间搞不懂所以然,后来想到Android中有一个目录叫drawable-nodpi,想想他的作用我就大概明白了,我们把图片复制一个,改一下名字,因为不能两张图片用同一个名字,然后分别存储到drawable和drawable-nodpi目录,如下:

在这里插入图片描述

如上图,这两张点9图片是一模一样的,只是文件名不一样而已,我们在布局中分别使用这两个图片作为TextView的背景显示,效果如下:

在这里插入图片描述

如上图,在AndroidStudio的布局预览中不太正常,不用管它,我们把它运行到手机上,效果如下:

在这里插入图片描述

如上图,上一个TextView的背景图是被放大了,看边框线条的大小就知道了,而下面一个TextView的线条大小是保持原样大小的,我这是把手机的画面投到电脑上,以1比1的比例显示的,如果直接看手机上的效果,因为手机屏幕比较小,不太容易发现线条被放大了,在电脑上,我们把原图也一起贴过来,以1比1显示,以进行对比,这样就能很清楚的看到保存在drawable目录的图片的线条被放大了,而保存在drawablea-nodpi目录下的图片线条是保持原样的,效果如下:

在这里插入图片描述

总结:与分辨率大小无关的图片(比如点9图片)要放到drawable-nodpi目录,不要放到其它目录,否则会被拉伸。

后续:其实放到nodpi也不一定对,因为这样的话,不管放到什么手机上,线条宽度都不会乘以相应的密度,所以,在设置图片的时候,应该要按照相应的分辨率来设计图片,然后把点9图片放到对应分辨率的目录下,比如:drawable-xhdpi、drawable-xxhdpi等等。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门