【背景】
折腾Android中的9 patch图片,对于EditText来说,对应的是:
edit_text_holo_light_xxx.xml
来说,其中的9 patch图片,比如:
xxx_textfield_activated_holo_light.9.png
中,9 patch的边框中,除了黑色线条,还有红色线条:
之前学习9 Patch:
【记录】研究Android中的9 patch的图片的原理以及如何去生成对应图片
时,没注意到有提到什么红线的含义。
此处想要去搞懂其含义。
【折腾过程】
1.参考:
Android 9 Patch tool What is the new layout bounds feature – Stack Overflow
找到官网的解释:
Android 4.3 APIs | Android Developers
->
"Optical bounds layout"
简单解释就是:
9 patch的边框中,黑线是必须的
红线是可选的
可选的红线,表示的是optical bounds,可选的边界说明
官网有图示,但是说实话,真心没有完全看懂,只是大概明白其含义了。
借助于官网的图片,尝试解释如下:
官网中给出的示例的带红线的9 patch图片:
红线部分对应的区域就是:
也就是说,红色这部分区域,是需要在指定的时候,去掉的区域,不显示的区域。
所以,对于普通的,不带可选边界optional bounds的图片:
去掉那部分红色后:
就变成了:
->
9 patch中,红线用于控制,去掉不需要的,多余的边框部分的内容。
->
自己根据实际需要,去加上对应的红线,用于去除不需要的多余的边框。
【总结】
9 patch,是个好东西。
只是稍微有点复杂。
需要更多的实践之后才能真正理解,并且能够制作出自己想要的9 patch图片。
转载请注明:在路上 » 【整理】Android中9 patch图片中的边框中红线的含义