9Patch图
NinePatch是一种很有用的PNG图片格式,它可以在特定区域随文字大小进行缩放。
- 上边线控制水平拉伸
- 左边线控制竖直拉伸
-
右边线和下边线控制内容区域
如下:
背景图片的中间区域会随着文字的大小进行缩放。
背景图片是一张NinePatch图片。
NinePatch图片可以使用android自带的draw9patch工具来制作,该工具在SDK安装路径的tools目录下。执行该工具,然后点击“File”->“open
9-path”打开一张用于制作NinePatch图片的原来图片。
在画布的上方和左方的边上画线指定缩放区域,勾选“Show patches”可显示画定的区域,
绿色为固定大小区域,
红色为缩放区域,
文字会摆放在红色区域。

制作完后,点击“File”à “save 9-path”保存图片,draw9patch工具会自动为图片加上*.9.png后缀。
把制作好的图片拷贝进项目的res/drawable目录,然后编写代码。如下:
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="退出" android:textColor="#330000"
android:background="@drawable/button"/>
9Patch图的更多相关文章
- Android 手机卫士--9patch图
本文主要介绍9patch图 *.9.png:android手机上,可以按需求自动拉伸的图片 本文地址:http://www.cnblogs.com/wuyudong/p/5947195.html,转载 ...
- 自定义控件(视图)2期笔记08:自定义控件之 9patch图说明
1. 何为 9patch图 ? 它是一个对png图片做处理的一个工具,能够为我们生成一个"*.9.png"的图片:所谓"*.9.png"这是Androi ...
- 9patch图的尺寸尽量为偶数
美工做了一张.9的背景图,宽度110*80 像素,描点如下: 放到720p的智能电视上观看,总感觉怪怪的.仔细观看可以发现,前景图总是不能完全的覆盖掉背景图.总有那么一个像素的点多余出来,如图所示: ...
- 解谜:为何用了9-Patch背景图后自带Padding属性?
本次分享的主题源于笔者在实际开发中遇到的问题. 具体现象为:当普通的9-Patch图用作TextView的backGround属性后,整个TextView便有了一定的Padding值.但笔者并没有给定 ...
- DOMO1
以下是Demo首页的预览图 demo下载:http://www.eoeandroid.com/forum.php?mod=attachment&aid=NjE0Njh8ZTIyZDA2M2N8 ...
- Android 图形总结
1.9patch图 2.按钮自定义 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:a ...
- 4种必须知道的Android屏幕自适应解决方案
文章来源:http://blog.csdn.net/shimiso/article/details/19166167 demo下载:http://www.eoeandroid.com/forum.ph ...
- Android各种屏幕适配原理
dip(dp): device independent pixels(设备独立像素) dip,就是把屏幕的高分成480分,宽分成320分.比如你做一条160dip的横线,无论你在320还480的模拟器 ...
- [原] Android性能优化方法
GPU过度绘制 打开开发者选型,"调试GPU过度绘制",蓝.绿.粉红.红,过度绘制依次加深 粉红色尽量优化,界面尽量保持蓝绿颜色 红色肯定是有问题的,不能忍受 使用Hierarch ...
随机推荐
- 【github】github的使用
一.上传本地代码 1.在github上新建一个repository(命名为英文) 2.打开cmd,进入上传代码所在目录 3.输入如下命令 第一步:git init --建仓第二步:git add * ...
- Django Setting文件配置和简单的创建数据库字段
Django Settings文件配置 静态文件配置 STATIC_URL = '/static/' # 静态文件配置 STATICFILES_DIRS = [ os.path.join(BASE_D ...
- 不创建父窗体的情况下他其他窗体的信息显示在第一个打开的窗体!(winfrom)
公司使用vs2008做的东西,用vs2017都打不开了(编译错误) 叫我更新一下,我看了一下,08的项目 和 winform 差不多 如何就用winfrom来做了 (winform 很久没碰了,, ...
- Python3.5环境安装及使用 Speech问题解决(转)
修改speech.py line59 修改import thread,改成import threading line157 修改print prompt,改成print(prompt) 对最后的函数_ ...
- sysbench 数据库性能测试工具的使用
sysbench 数据库性能测试 Mac上安装sysbench测试工具 brew install sysbench 测试sysbench 是否安装成功 //执行这条指令 sysbench cpu -- ...
- LoadRunner(2)
一.性能测试的基本概念 1.并发和在线的区别:并发的压力是一种瞬时压力,一般针对同一类型业务:在线的压力是一段时间的压力,没有并发那么集中. 规律:一般20用户并发产生的压力相当于200用户在线的压力 ...
- Python 去除字符串中的空行
Python 去除字符串中的空行 mystr = 'adfa\n\n\ndsfsf' print("".join([s for s in mystr.splitlines(True ...
- Elasticsearch:运用scroll接口对大量数据实现更好的分页
在Elasticsearch中,我们可以通过size和from来对我们的结果来进行分页.但是对于数据量很大的索引,这是有效的吗?Scroll API可用于从单个搜索请求中检索大量结果(甚至所有结果), ...
- 理解Event冒泡模型
本文探索一下Event的冒泡过程和初学遇到的几个小bug DOM Event概述 Event接口是检测在DOM中的发生的所有事件,我们一直在用,而且从DOM的很早的版本就一直在用着.早期的网景(后来的 ...
- shell编程expr表达式----传智播客的书linux编程基础中出现的问题
首先声明:本人是传智播客的粉丝,拥有他出的多本编程书籍,此文绝无诋毁抹黑之意. 但在linux系统编程第88页给出的while循环范例中,代码运行无法得到预期结果 原代码如下 #!/bin/sh su ...