Android的Canvas、Bitmap、Drawable和Paint
2015-12-01 10:41
369 查看
Canvas,画布。它拥有一个Bitmap,可以在它上面绘制各种图形图像,它也提供了裁剪、选取等操作,还可以给图像做旋转、缩放等操作。
其主要方法有:drawLine()/drawText()/drawPicture()/drawBitmap(), clipRect()/clipPath()/clipRegion(), scale()/rotate()/srew()等。
Bitmap,位图。它拥有一块内存,存放矩形区域的像素点的数据。它有RGB565、ARGB8888等格式。它有长宽,密度等属性。
其主要方法有:setPixel()/getPixel(), createBitmap(), copyPixelsFromBuffer()/copyPixelsToBuffer()等。
Drawable,可绘制对象。它拥有边界,透明度,过滤色等属性,可以由xml生成(inflate),可以绘制到画布。
其主要方法有:createFromStream()/createFromXml()/inflate(), draw(Canvas canvas)等。
其主要子类有:ShapeDrawable/PictureDrawable/BitmapDrawable/TransitionDrawable渐变/AnimationDrawable逐帧等。
Paint,绘制工具。等同于画笔和画刷,他管理了颜色、样式、阴影、特效、字体等。
其主要方法有:measureText()/breakText()//getTextBounds()等。
说明,Bitmap和Paint的很多方法,都是掉了native的。
其主要方法有:drawLine()/drawText()/drawPicture()/drawBitmap(), clipRect()/clipPath()/clipRegion(), scale()/rotate()/srew()等。
Bitmap,位图。它拥有一块内存,存放矩形区域的像素点的数据。它有RGB565、ARGB8888等格式。它有长宽,密度等属性。
其主要方法有:setPixel()/getPixel(), createBitmap(), copyPixelsFromBuffer()/copyPixelsToBuffer()等。
Drawable,可绘制对象。它拥有边界,透明度,过滤色等属性,可以由xml生成(inflate),可以绘制到画布。
其主要方法有:createFromStream()/createFromXml()/inflate(), draw(Canvas canvas)等。
其主要子类有:ShapeDrawable/PictureDrawable/BitmapDrawable/TransitionDrawable渐变/AnimationDrawable逐帧等。
Paint,绘制工具。等同于画笔和画刷,他管理了颜色、样式、阴影、特效、字体等。
其主要方法有:measureText()/breakText()//getTextBounds()等。
说明,Bitmap和Paint的很多方法,都是掉了native的。
相关文章推荐
- android 设置系统屏幕亮度
- MTK android Driver:UART介绍
- Android-DialogFragment对话框之登录
- GitHub上史上最全的Android开源项目分类汇总
- android 加载等待Dialog
- Android之checkbox使用
- android SurfaceView绘制实现原理解析
- Android仿QQ窗口的抖动的动画效果
- Android SDK开发范例大全 ---3.3更改TextView颜色
- android应用资源预编译,编译和打包全解析
- 主题:如何实现android中监听来电并生成悬浮窗体提示
- 再也不用数据线调试android了
- android 加一个按钮,退出程序
- AS(android)自带的快捷键
- Android LayoutInflater详解
- Android项目的目录结构
- 读Android Singleton设计模式实战
- Android全局捕获异常
- Android新建项目选择SDK的区别
- 修改 Mac 版 AndroidStudio 虚拟机内存大小