对于点9图,开发android的应该都不陌生,主要是用于对话框等拉伸能够不变形的场景。但是也有些坑需要注意下。
首先先再了解下点9图。
点9图相比普通的png而言四边多了一个像素,上和左边的像素用来控制拉伸的部分,而下面和右边是用来控制内容区域的。当你要显示的内容(例如textview的文字)大于你右边和下边显示的大小的时候,上边或者左边会根据所有点按照比例拉伸。例如,你上方画了两个点,一个一个像素,另一个是两个像素,你的内容需要拉伸9个像素,则第一点的部分拉伸三个,第二点的部分拉伸6个像素。所以,一般左边和上边点个点就够了,除非你有多个拉伸点,需要按照不同比例。右边和下边是控制内容的,一般用来排除掉非内容区域(例如对话框,那个角并不希望文字显示到这里,而设置距离又不知道多大的时候)
接下来说下坑吧,第一个比较简单,就是后缀名是.9.png,但是UI有时候并不知道系统默认隐藏已知后缀名,所以,UI看来是.9.png的可能实际上是.9.png.png,所以本质还是png,这个比较简单,因为as会提示错误(点不能作为文件名)
第二个坑就是以为点9就是不会模糊,但是一显示发现边缘的圆角依旧是模糊的,但是在编辑.9图上看到的并没有模糊。于是UI便让你改。这是因为分辨率的问题,UI给你的是低分辨率的,在高分辨率上自动放大,导致圆角模糊,所以,把点9图放到最大分辨率上的即可(缺点就是分辨率越大,圆角会越小,如果不能忍受的话,那就让UI切各种分辨率下的.9图吧)