【Android界面实现】关于Android中9patch图的一点小解释
来源:互联网 发布:网络服务器配置与管理 编辑:程序博客网 时间:2024/06/05 22:38
转自:http://blog.csdn.net/zhaokaiqiang1992
关于为什么使用.9图,我就不长篇大论了,就是为了减少图片资源体积,我们这篇文章重点解决.9图的制作的一些小问题。
.9的制作,实际上就是在原图片上添加1px的边界,然后按照我们的需求,把对应的位置设置成黑色线,系统就会根据我们的实际需求进行拉伸。
下图是对.9图的四边的含义的解释,左上边代表拉伸区域,右下边代表padding box,就是间隔区域,在下面,我们给出一个例子,方便大家理解。
先看下面两张图,我们理解一下这四条线的含义。
上图和下图的区别,就在于右下边的黑线不一样,具体的效果的区别,看右边的效果图。上图效果图中深蓝色的区域,代表内容区域,我们可以看到是在正中央的,这是因为我们在右下边的是两个点,这两个点距离上下左右四个方向的距离就是padding的距离,所以深蓝色内容区域在图片正中央,我们再看下图,由于右下边的黑线是图片长度,所以就没有padding,从效果图上的表现就是深蓝色区域和图片一样大,因此,我们可以利用右下边来控制内容与背景图边缘的padding。
如果你还不明白,那么我们看下面的效果图,我们分别以图一和图二作为背景图,下面是效果图。
我们可以看到,使用wrap_content属性设置长宽,图一比图二的效果大一圈,这是为什么呢?还记得我上面说的padding吗?
这就是padding的效果提现,怎么证明呢?我们再看下面一张图,给图一添加padding=0,这样背景图设置的padding效果就没了,是不是两个一样大了?
ok,我想你应该明白右下边的黑线的含义了,下面我们再看一下左上边的效果。
下面我们只设置了左上边线,效果图如下
上面的线没有包住图标,下面的线正好包住了图标,从右边的效果图应该可以看出差别,黑线所在的区域就是拉伸区域,上图黑线所在的全是纯色,所以图标不变形,下面的拉伸区域包裹了图标,所以在拉伸的时候就会对图标进行拉伸,但是这样就会导致图标变形。注意到下面红线区域了嘛?这是系统提示我们的,因为这样拉伸,不符合要求,所以会提示一下。
- 【Android界面实现】关于Android中9patch图的一点小解释
- 【Android界面实现】关于Android中9patch图的一点小解释
- 【Android界面实现】关于Android中9patch图的一点小解释
- 【Android界面实现】关于Android中9patch图的一点小解释
- 【9patch】Android界面制作中最重要最强大的武器: 9-patch
- 记Android关于.9切图的一点小技巧
- android布局中关于Tabhost的一点小陷阱!
- 关于android中建立socket连接的一点小经验
- Android界面制作中最重要最强大的武器: 9-patch
- Android界面制作中最重要最强大的武器: 9-patch
- Android中9-patch图片的总结
- android中9-patch图片的使用
- android 中9patch图片的制作
- 【Android 界面效果9】9patch图片
- 关于android中gridview的一点总结
- 关于Android中selector的一点注意事项
- 关于使用Robotium进行Android测试的一点小改进
- 关于使用Robotium进行Android测试的一点小改进
- 关于domReady事件的一点看法,domReady队列
- 【Machine Learning】【Python】六、Edge Boxes + SVM + NMS for Localization ---- 《SVM物体分类和定位检测》
- WebService
- POJ 3087 Shuffle'm Up(神之模拟)
- 为什么volley只适合数据量小,并发高的请求
- 【Android界面实现】关于Android中9patch图的一点小解释
- nagios 安装
- AES加密时的 java.security.InvalidKeyException: Illegal key size 异常
- HTML5本地存储Localstorage实现注册登录以及验证
- 选课(动态规划与DFS在多叉树中的应用)
- Word中如何使公式与文字对齐
- 结构语句
- LeetCode
- java对象序列化