A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1黑马币
本帖最后由 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

2 个回复

正序浏览
左边黑边是垂直拉伸区域,上边是水平拉伸区域
右边和下边是内容显示区域
回复 使用道具 举报
9patch图片,左边黑边是垂直拉伸区域,上边是水平拉伸区域
右边和下边是内容显示区域
在制作9patch图片时可以点击下边的show content选择框来预览内容区域
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马