Android 图形用户界面 之 绘图(二) Paint类 主要方法介绍

  1. /**
  2. * Paint类介绍
  3. *
  4. * Paint即画笔,在绘图过程中起到了极其重要的作用,画笔主要保存了颜色,
  5. * 样式等绘制信息,指定了如何绘制文本和图形,画笔对象有很多设置方法,
  6. * 大体上可以分为两类,一类与图形绘制相关,一类与文本绘制相关。
  7. *
  8. * 1.图形绘制
  9. * setARGB(int a,int r,int g,int b);
  10. * 设置绘制的颜色,a代表透明度,r,g,b代表颜色值。
  11. *
  12. * setAlpha(int a);
  13. * 设置绘制图形的透明度。
  14. *
  15. * setColor(int color);
  16. * 设置绘制的颜色,使用颜色值来表示,该颜色值包括透明度和RGB颜色。
  17. *
  18. * setAntiAlias(boolean aa);
  19. * 设置是否使用抗锯齿功能,会消耗较大资源,绘制图形速度会变慢。
  20. *
  21. * setDither(boolean dither);
  22. * 设定是否使用图像抖动处理,会使绘制出来的图片颜色更加平滑和饱满,图像更加清晰
  23. *
  24. * setFilterBitmap(boolean filter);
  25. * 如果该项设置为true,则图像在动画进行中会滤掉对Bitmap图像的优化操作,加快显示
  26. * 速度,本设置项依赖于dither和xfermode的设置
  27. *
  28. * setMaskFilter(MaskFilter maskfilter);
  29. * 设置MaskFilter,可以用不同的MaskFilter实现滤镜的效果,如滤化,立体等
  30. *
  31. * setColorFilter(ColorFilter colorfilter);
  32. * 设置颜色过滤器,可以在绘制颜色时实现不用颜色的变换效果
  33. *
  34. * setPathEffect(PathEffect effect);
  35. * 设置绘制路径的效果,如点画线等
  36. *
  37. * setShader(Shader shader);
  38. * 设置图像效果,使用Shader可以绘制出各种渐变效果
  39. *
  40. * setShadowLayer(float radius ,float dx,float dy,int color);
  41. * 在图形下面设置阴影层,产生阴影效果,radius为阴影的角度,dx和dy为阴影在x轴和y轴上的距离,color为阴影的颜色
  42. *
  43. * setStyle(Paint.Style style);
  44. * 设置画笔的样式,为FILL,FILL_OR_STROKE,或STROKE
  45. *
  46. * setStrokeCap(Paint.Cap cap);
  47. * 当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的图形样式,如圆形样式
  48. * Cap.ROUND,或方形样式Cap.SQUARE
  49. *
  50. * setSrokeJoin(Paint.Join join);
  51. * 设置绘制时各图形的结合方式,如平滑效果等
  52. *
  53. * setStrokeWidth(float width);
  54. * 当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的粗细度
  55. *
  56. * setXfermode(Xfermode xfermode);
  57. * 设置图形重叠时的处理方式,如合并,取交集或并集,经常用来制作橡皮的擦除效果
  58. *
  59. * 2.文本绘制
  60. * setFakeBoldText(boolean fakeBoldText);
  61. * 模拟实现粗体文字,设置在小字体上效果会非常差
  62. *
  63. * setSubpixelText(boolean subpixelText);
  64. * 设置该项为true,将有助于文本在LCD屏幕上的显示效果
  65. *
  66. * setTextAlign(Paint.Align align);
  67. * 设置绘制文字的对齐方向
  68. *
  69. * setTextScaleX(float scaleX);
  70. * 设置绘制文字x轴的缩放比例,可以实现文字的拉伸的效果
  71. *
  72. * setTextSize(float textSize);
  73. * 设置绘制文字的字号大小
  74. *
  75. * setTextSkewX(float skewX);
  76. * 设置斜体文字,skewX为倾斜弧度
  77. *
  78. * setTypeface(Typeface typeface);
  79. * 设置Typeface对象,即字体风格,包括粗体,斜体以及衬线体,非衬线体等
  80. *
  81. * setUnderlineText(boolean underlineText);
  82. * 设置带有下划线的文字效果
  83. *
  84. * setStrikeThruText(boolean strikeThruText);
  85. * 设置带有删除线的效果
  86. *
  87. */
时间: 2024-07-30 20:40:00

Android 图形用户界面 之 绘图(二) Paint类 主要方法介绍的相关文章

Android中那些让你相见恨晚的类-接口-方法

Part 1: Activity.startActivities() 常用于在应用程序中间启动其他的Activity. TextUtils.isEmpty() 简单的工具类,用于检测是否为空.(可同时判断""和null哦) Html.fromHtml() 用于生成一个Html,参数可以是一个字符串.个人认为它不是很快,所以我不怎么经常去用.(我说不经常用它是为了重点突出这句话:请多手动构建 Spannable 来替换 Html.fromHtml),但是它对渲染从 web 上获取的文字还

Java缓存Ehcache-核心类和方法介绍

Ehcache中核心类和方法 EhCache里面有一个CacheManager类型,它负责管理cache.Cache里面存储着Element对象,Element必须是key-value对.Cache是实际物理实现的,在内存中或者磁盘.这些组件的逻辑表示就是下面即将要讨论的类.他们的方法提供了可编程的访问方式. CacheManager 负责Cache的创建.访问.移除. CacheManager创建 CacheManager支持两种创建模式:单例(Singleton mode)和实例(Insta

Android项目开发全程(二)--Afinal用法简单介绍

本篇博文接上篇的<Android项目开发全程(一)--创建工程>,主要介绍一下在本项目中用到的一个很重要的框架-Afinal,由于本系列博文重点是项目开发全程,所以在这里就先介绍一下本项目中用到的几个功能: Afinal简介 Afinal 是一个android的sqlite orm 和 ioc 框架.同时封装了android中的http框架,使其更加简单易用: 使用finalBitmap,无需考虑bitmap在android中加载的时候oom的问题和快速滑动的时候图片加载位置错位等问题. Af

Android自动化测试框架开发(二)Monkey、MonkeyRunner介绍和分析

本篇介绍两个Android自带的测试框架:Monkey和MonkeyRunner 1.Monkey Monkey是android自带的测试框架,通过向手机发送随机事件(手势,点击,输入)进行应用程序压力测试(可指定应用程序包名,也可以说是稳定性测试),测试应用程序的稳定性和健壮性: 使用步骤: (1)进入adb shell (2)cd /system/bin 然后执行monkey命令即可: 常用的monkey命令(网上借的图): 分析: Monkey测试是一种为了测试软件的稳定性.健壮性的快速有

Java多线程系列二——Thread类的方法

Thread实现Runnable接口并实现了大量实用的方法 public static native void yield(); 此方法释放CPU,但并不释放已获得的锁,其它就绪的线程将可能得到执行机会,它自己也有可能再次得到执行机会 public static native void sleep(long millis) throws InterruptedException; 此方法释放CPU,但并不释放已获得的锁,其它就绪的线程将得到执行机会,在休眠时间结束后,当前线程继续执行 publi

Math类的方法介绍

java中lang包下类Math一些方法介绍 public class MathDemo { public static void main(String[] args) { test01(); test02(); test03(); test04(); } /* *生成随机的四位数 *Math.random()产生[0,1)的随机数double类型 */ public static void test01() { int number = (int) (Math.random()*9000 +

Android 绘图(一) Paint

了解Android绘图或者自定义View的同学,都知道Canvas 类.Paint类等.今天就来看看Paint的有关描述. 首先看看官网的定义: The Paint class holds the style and color information about how to draw geometries, text and bitmaps. 翻译:Paint类拥有如何绘制几何图形.文本.位图的颜色和样式等信息. Android系统提供了设置画笔属性的Api,接下来,就来看一些常用Api的使

Android随笔之——Android时间、日期相关类和方法

今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和SimpleDateFormat,今天会稍微提到关于这两个类的用法,下次会找个时间细讲. 一.Time类 在官方的API中,有建议说使用Time代替Calendar,原因不明,据说用Time对CPU的负荷比较小. 在Time中,年月日时分秒的转义字符分别对应%Y%m%d%H%M%S,切记,大小写千万不能写错

IntelliJ IDEA使用(一)基本设置与类、方法模板设置

其实之前一直开发都是在使用的是Eclipse,但是最近在做Maven项目的时候要用IntelliJ IDEA,据说这个idea功能非常的强大,最近在使用的时候发现如果适应的真的是非常的强大.感觉是比Eclipse强大的多.收费的就是不一样. 一.基本设置 1.1.关闭Intellij IDEA自动更新 在File->Settings->Appearance & Behavior->System Settings->Updates下取消Automatically check