今天来讲下android UI设计中常要用到的可延伸图像。除了最基本的png,jpg与gif三种格式外,android还有一种叫做Nine-Patch的可延伸图 像.9.png。和png格式不同的是,他会随着属性物的大小变化而改变自己的大小,从而来适应属性物的大小。这个特点,在我们平常的UI设计中是非常实 用的。最常见的一个图片做按钮背景,来适配字体大小,这时候,你会发现,这种可延伸图像非常的好用。

下面就来讲讲如何使用吧。Android SDK提供了一个工具来制造这种图像。在android sdk的tools目录下,有个draw9patch.bat的文件,就是他啦。运行它,将我们的图片拖进去,就会得到如下的样子。

android UI进阶之可延伸的图像_第1张图片

左边窗口的是原始图形,你可以通过画面下的Zoom来调整大小,Pathc scale调整png图像最大可以延伸的倍率,延伸后的结果就显示在右边的窗口。在一个像素里点击,在图形边缘绘制线条来定义可延伸的部分。在这边需要注 意的是,你必须至少在图形的上边缘和左边缘画线,否则将图片导入后工程会报错。调整好以后,点击File -save,注意需要保存为*.9.png格式。在程序中的使用和普通图片完全一样,这就不讲了。

来看下例子

给出xml中的代码,其中popup为9.png格式,popup1为普通png格式

[xhtml] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. android:background="#C5CCD4FF"
  7. >
  8. <Button
  9. android:id="@+id/small"
  10. android:layout_width="wrap_content"
  11. android:layout_height="wrap_content"
  12. android:text="Small"
  13. android:textSize="10sp"
  14. android:textColor="#ffffffff"
  15. android:background="@drawable/popup1"
  16. />
  17. <Button
  18. android:id="@+id/large"
  19. android:layout_width="wrap_content"
  20. android:layout_height="wrap_content"
  21. android:text="LargeNotFit"
  22. android:textSize="40sp"
  23. android:textColor="#ffffffff"
  24. android:background="@drawable/popup1"
  25. />
  26. <Button
  27. android:id="@+id/largefit"
  28. android:layout_width="wrap_content"
  29. android:layout_height="wrap_content"
  30. android:text="LargeFit"
  31. android:textSize="40sp"
  32. android:textColor="#ffffffff"
  33. android:background="@drawable/popup"
  34. />
  35. </LinearLayout>

看下运行的效果

android UI进阶之可延伸的图像_第2张图片

合理的使用Nine—Patch图像,在UI设计中是非常重要的。

更多相关文章

  1. 一起写一个Android图片轮播控件
  2. Android中高效的显示图片之二——在非UI线程中处理图片
  3. Android多媒体开发 Pro Android Media 第一章 Android图像编程入
  4. Android远程图片获取和本地缓存
  5. 一步步做Android增强型图片浏览器
  6. 在android中画圆形图片的几种办法

随机推荐

  1. Android自动提示文本框(AutoCompleteText
  2. Android 设置 横屏 竖屏
  3. Android官方dip值到pix值转换:dip2pix,dip2
  4. MAN
  5. [6410][android]给android cupcake移植FB
  6. 【Demo 0005】Android 资源
  7. 自己实现android的日志框架
  8. Android(安卓)常用控件接口监听
  9. Android Studio ADB响应失败解决方法
  10. Android之多线程断点下载