Animation and Graphics partⅠ Overview
2016-07-04 15:52
411 查看
本文是对Android动画API的官方资料的翻译。
原文链接:https://developer.android.com/guide/topics/graphics/overview.html
以下正文开始:
Android 3.0(API level 11)引入的属性动画可以操作任何对象的所有属性,包括不会被显示在屏幕的属性。这种动画系统具有可扩展性,也可以操作自定义类型属性。
视图动画是一种较老的动画系统,只能用于视图(Views)。视图动画操作相对简单而且能够满足很多应用的需求。
帧动画就是将Drawable资源文件一个接一个的显示,像胶片电影。如果你想做动画的对象用Drawable文件显示更方便的话,这种动画是有用的。
Android 提供了一系列控件来满足用户界面的基本功能。你可以通过改变控件的外观和行为来拓展控件。另外,也可以使用Canvas类中的绘制方法来自定义2D控件,或者创建Drawable对像for things such as textured buttons or frame-by-frame animation.
从Android 3.0开始,可以通过硬件加速大多数有 Canvas API完成的绘制来提升性能。
Android 框架层API 和NDK(Native Development Kit)支持OpenGL ES 1.0 和 2.0。如果你的应用不是由Canvas API支持,或者想要平台独立性并且不要求太高的性能,可以使用Android框架层API来增加一下图形提升。相对于NDK,使用框架层的API在性能上有很多差距,所以在类似于游戏这样的图形增强的应用中,使用NDK更有帮助(需要注意的是,仍然可以通过框架层API获得足够的性能,比如Google Body app完全基于框架层API开发)。如果你有很多本地代码要导入到Android系统中,OpenGL
with NDK 很有用处。需要更多使用NDK的信息,可以阅读--->NDK download
原文链接:https://developer.android.com/guide/topics/graphics/overview.html
以下正文开始:
动画和图形概述
Android提供了很多功能强大的API,将动画应用于 UI 元素和绘制自定义 2D 或者 3D 图形方面。动画(Animation)
Android提供了两种动画系统:属性动画(property animation)和视图动画(view animation.)。这两种都是动画实现的可选方案,但是通常来说,更倾向于使用属性动画,因为其更加灵活,能够提供更多的特性。除了这两种动画系统之外,还有一种帧动画(Frame animation)。
属性动画(Property animation)
Android 3.0(API level 11)引入的属性动画可以操作任何对象的所有属性,包括不会被显示在屏幕的属性。这种动画系统具有可扩展性,也可以操作自定义类型属性。
视图动画(View animation)
视图动画是一种较老的动画系统,只能用于视图(Views)。视图动画操作相对简单而且能够满足很多应用的需求。
帧动画(Drawable animation)
帧动画就是将Drawable资源文件一个接一个的显示,像胶片电影。如果你想做动画的对象用Drawable文件显示更方便的话,这种动画是有用的。图形(Graphics)
当写一个应用程序的时候,精准考虑图形需求是很有必要的。不同的图形任务最好由不同的技术来实现。例如,相对静态的应用程序的图形与动画和有交互的游戏的图形与动画有着明显的不同。在这里我们谈论Android平台上绘制图形的选择以及它们适用的任务。
Canvas and Drawable
Android 提供了一系列控件来满足用户界面的基本功能。你可以通过改变控件的外观和行为来拓展控件。另外,也可以使用Canvas类中的绘制方法来自定义2D控件,或者创建Drawable对像for things such as textured buttons or frame-by-frame animation.
硬件加速(Hardware Acceleration)
从Android 3.0开始,可以通过硬件加速大多数有 Canvas API完成的绘制来提升性能。
OpenGL
Android 框架层API 和NDK(Native Development Kit)支持OpenGL ES 1.0 和 2.0。如果你的应用不是由Canvas API支持,或者想要平台独立性并且不要求太高的性能,可以使用Android框架层API来增加一下图形提升。相对于NDK,使用框架层的API在性能上有很多差距,所以在类似于游戏这样的图形增强的应用中,使用NDK更有帮助(需要注意的是,仍然可以通过框架层API获得足够的性能,比如Google Body app完全基于框架层API开发)。如果你有很多本地代码要导入到Android系统中,OpenGLwith NDK 很有用处。需要更多使用NDK的信息,可以阅读--->NDK download
相关文章推荐
- 反色二维码扫描
- Selenium Webdriver元素定位的方式
- Hive源码解析与开发实战笔记--讲师贾杰
- kafka的producer报错异常
- iOS UIImage渲染模式 imageWithRenderingMode:
- 【FAQ】gitbook FileNotParsableError: xxx file cannot be parsed
- 直播要解决的问题
- ASP.NET-GridView分页排序显示
- 利用sass构建组件化的ui库
- Linux下(CentOS 6+)安装R及Rstudio最简单的办法
- lightAdmin使用心得
- DrawNode
- Git学习
- MongoDB在不同主机间复制数据库和集合的教程
- 基于PhalApi的Smarty拓展
- 读书笔记-java网络编程-4Internet地址-地址简述
- inArray 比较数组
- scala 执行 hive,hadoop,mysql等命令
- Centos6.5搭建Redis集群
- group by 执行流程图