一个NinePatchDrawable图片其实就是一个可延展的位图,它在android系统下,如果它被设置为背景图的话,会自动适应宿主View的尺寸。比如:对于android的button空间,由于button text长度的不同就很适合用NinePatchDrawable的图片作为背景,免去了为不同尺寸的图片定制背景的麻烦。

一个NinePatchDrawable图片是一张标准的png图片,只是它带有比正常图片多一个像素宽度的额外信息。它必须被保存成 .9.png,并且放在res/drawable/目录下。

对于button背景图片变形的情况,可以通过使用9pitch图片来解决。从而使一个图片能适应不同尺寸的Button的情况。

NinePatch图片以*.9.png结尾,和普通图片的区别是四周多了一个边框,可以看下关于图片的结构图:

任何图片都能被编辑成9pitch图片,可以使用android系统ADK自带的tool工具,在SDK的tools目录下的draw9patch.bat工具。

一个9pitch图片使在原图片的四边个增加一个像素的边,来定义图片的扩展信息,有两个参数是必须的:左侧参数和上侧参数。如图片所示。左侧和上侧两个参数共同定义了图片可扩展的区域。

更多相关文章

  1. Android(安卓)开发照相功能实例详解
  2. android分享图片到微信,无需申请APP_ID
  3. android:设置背景图片、背景颜色透明
  4. Android(安卓)网络图片异步加载实例
  5. Android(安卓)- 图片处理之Glide4.0
  6. 自定义圆形进度条的实现方式
  7. 《第一行代码Android》学习总结第二章 Activity创建与相关设置
  8. Android(安卓)Bitmap压缩策略
  9. Android中使用HttpURLConnection实现GET POST JSON数据与下载图

随机推荐

  1. Android之使用Http协议实现文件上传功能
  2. Android实现读写SD卡
  3. Android(安卓)点亮屏幕
  4. Android(安卓)colors.xml 颜色配置文件
  5. Android(安卓)常用控件自定义样式RadioBu
  6. 自定义RatingBar/SeekBar,重载样式
  7. android中listView实现异步加载网络图片
  8. could not write file\android-7\/syst
  9. 退出 android 应用程序
  10. [RK3288][Android6.0] 调试笔记 --- 软硬