黑马程序员技术交流社区

标题: [深圳特色][问答网]9path图的右边和下边的黑边有什么作用? [打印本页]

作者: 深圳黑马程序员    时间: 2015-12-6 21:39
标题: [深圳特色][问答网]9path图的右边和下边的黑边有什么作用?
本帖最后由 xiaoqing 于 2015-12-6 21:44 编辑


9path文件是在Android项目中用于背景图等拉伸用的,经常会用到。但是对于9path文件到底怎样拉伸,还有这些画这些黑边到底有什么用。下面由深圳的问答网中看看这些问题的回答:




学生的问题:

在上课的时候,老师讲了9path图的使用,是可以拉伸的作用,但是我们看到一些资源文件的9path图和老师讲得有出入。例如这张


发现右边的和下方的黑色长条没有和正对着的那一条边相对应,这个应该怎么理解呢?多出来的边有什么作用?

其实9path图的黑边有两种功能,分别是
1:确定拉伸的区域
2:确定内容的区域
老师一般上课只讲了其中拉伸的一种,这种事最为常见和实用,那么问题中提到的右边和下边的黑边就是另外一种功能
那么我重新帮你们归纳一下
先讲第一种拉伸的功能
如果要实现拉伸的区域,只需要再上边或左边去做标记即可
那么如果在上边的中央点上一个小黑点,那么就是告诉计算机,如果要图片要横向拉伸的时候,就拉伸标记的地方
那么如果在左边的中央点上一个小黑点,那么就是告诉计算机,如果要图片要纵向拉伸的时候,就拉伸标记的地方
这里要注意一点的是,在不在右边和下边标记上点,一点关系都没有

第二种确定内容区域的功能
先讲讲功能,再举个例子
确定内容区域其实我们可以理解为,为内容显示区域设置一个padding值,就是内边距的值
举个栗子
创建一个textview,并为textview设置一个普通的9path背景(没有标记右边和下边的黑边),那么显示为下方这个效果(图1)

那么我们再设置一个特殊的9path图,这个图标记了右边和下边黑边的9path图,确定了内容区域,如下图

如么此时的textview的显示效果变成这个样子(图2),可以对比一下,和图1的有什么区别?

我们可以看到,差别就在于图2 的内容多了一个padding值,那么这个padding值就是由右边和下边的黑边决定的

[深圳特色] 揭秘内部问答网中经典问题,每周更新!
深圳校区除了全国独有问答网,就业老师面试服务,还有更多神秘惊喜等着你,咨询热线:0755-66689855


作者: jonloong    时间: 2015-12-8 14:30
9patch图片,左边黑边是垂直拉伸区域,上边是水平拉伸区域
右边和下边是内容显示区域
在制作9patch图片时可以点击下边的show content选择框来预览内容区域
作者: 我心飞杨    时间: 2015-12-16 16:11
左边黑边是垂直拉伸区域,上边是水平拉伸区域
右边和下边是内容显示区域




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2