动画和图形概述

Android 提供了大量的强大的API以应用于UI动画和绘制2D和3D图形。以下各节向你描写叙述了这些API的预览和系统能力以帮助你决定怎么才是达到你需求的最佳方法。

动画

Android 框架提供了两个动画系统: 两种动画系统都是切实可用的,可是普通情况下属性动画系统是被首推使用的。由于它更灵活而且提供了很多其它的特性。在此两系统之外。你还能够使用Drawable动画,它使得你能够载入drawable资源而且一帧帧的显示它们。

Property动画

从Android 3.0 (API level 11)開始引入。property动画系统使你能够动画一个对象的propertie,包含那些不能显示在屏幕上的对象。此系统是可扩展的而且也能让你动画自己定义类型的propertie。

View动画

View 动画是旧的动画系统而且仅仅能被用于View。它的建立相对easy而且提供了足够的能力来满足不论什么应用的需求。

Drawable动画

Drawable 动画一个接一个的显示Drawable 资源,就像放电影。

2D 和 3D 图形

当写一个应用时,细致考虑你的图形需求是非常重要的。不同的图形任务使用不同的技术实现。比如,图形和动画的实现对于一个静态应用与一个交互式游戏就区别非常大。以下。我们将讨论一些在Android系统上的绘制图形的操作以及它们最适合的任务。

Canvas 和 Drawables

Android提供了一系列的 View widget。它们提供了丰富的用户界面功能。

你也能够扩展这些widgets来改变它的们样子和行为。

另外,你能够使用Canvas 类的丰富的绘制方法做你自己的2D图形或为纹理button或一帧接一帧的动画创建 Drawable 对象。

硬加速

从Android 3.0開始,你能够使用主流的Canvas API的硬加速功能大辐提高它们的性能。

OpenGL

Android 支持OpenGL ES 1.0和2.0,Android框架API和本地API(NDK)都支持。当你想为你的应用加入一些Canvas API不支持的增强功能时,或你希望不依赖于平台而且没有高性能需求时。应使用框架API。NDK与框架API之间有性能的区别,所以图形集中式的应用比方游戏,使用NDK 更佳(可是还要注意重要的一点,你仍然能够使用框架API达到高性能。比方。Google Body app就是全然用框架API实现的)。 NDK中的OpenGL另一个用处是用于移植本地代码(比方C++代码)到Android。

下一篇: android动画具体解释二 属性动画原理

android动画具体解释一 概述的更多相关文章

  1. android动画具体解释二 属性动画原理

    property动画是一个强大的框架,它差点儿能使你动画不论什么东西. 你能够定义一个动画来改变对象的不论什么属性,不论其是否被绘制于屏幕之上. 一个属性动画在一定时间内多次改变一个属性(对象的一个字 ...

  2. android动画具体解释四 创建动画

    使用ValueAnimator进行动画 通过指定一些int, float或color等类型的值的集合.ValueAnimator 使你能够对这些类型的值进行动画.你需通过调用ValueAnimator ...

  3. android动画具体解释六 XML中定义动画

    动画View 属性动画系统同意动画View对象并提供非常多比view动画系统更高级的功能.view动画系统通过改变绘制方式来变换View对象,view动画是被view的容器所处理的,由于View本身没 ...

  4. android 动画具体解释(二)

    以下就開始学习属性动画的基本使用方法,我们来看属性动画的继承关系,例如以下如所看到的: 显然关注的焦点应该是ValueAnimator,ObjectAnimator这两个类啦,ObjectAnimat ...

  5. Android 动画具体解释View动画

    为了让用户更舒适的在某些情况下,利用动画是那么非常有必要的.Android在3.0一旦支持两种动画Tween动漫Frame动画.Tween动画支持简单的平移,缩放,旋转,渐变.Frame动画就像Gif ...

  6. Android 动画具体解释Frame动画 (Drawable Animation)

    Frame动画像gif画画,通过一些静态的图片,以实现动画效果. Android sdk该AnimationDrawable就是专门针对Frame动画,当然Frame动画也可在java代码或者xml中 ...

  7. Android中的动画具体解释系列【4】——Activity之间切换动画

    前面介绍了Android中的逐帧动画和补间动画,并实现了简单的自己定义动画.这一篇我们来看看怎样将Android中的动画运用到实际开发中的一个场景--Activity之间跳转动画. 一.定义动画资源 ...

  8. android 动画xml属性具体解释

    /** * 作者:crazyandcoder * 联系: * QQ : 275137657 * email: lijiwork@sina.com * 转载请注明出处! */ android 动画属性具 ...

  9. Android动画学习(二)——Tween Animation

    前两天写过一篇Android动画学习的概述,大致的划分了下Android Animation的主要分类,没有看过的同学请移步:Android动画学习(一)——Android动画系统框架简介.今天接着来 ...

随机推荐

  1. ASP.NET MVC 编程参考

    ASP.NET MVC 编程参考   转载请注明出处:http://surfsky.cnblogs.com MVC    参考 http://msdn.microsoft.com/zh-cn/dd40 ...

  2. Angular6

    Structural Directives https://angular.io/guide/structural-directives#template-input-variable There a ...

  3. Java8新特性之重复注解(repeating annotations)浅析

    Java8新特性之重复注解(repeating annotations)浅析 学习了:https://www.jb51.net/article/50827.htm

  4. [Bash] Create Aliases in .bash_profile for Common Bash Commands

    .bash_profile is a file that bash invokes (or more technically sources) before the start of a new ba ...

  5. [Algorithm] Radix Sort Algorithm

    For example we have the array like this: [, , , , , ] First step is using Counting sort for last dig ...

  6. oracle 给用户赋表空间

    alter user fortune_test quota unlimited on data01;

  7. Python编程-基础知识-条件判断

    1. 简单的if/else条件判断 judge_flow.py name = input("Please input name: ") if name == 'master': p ...

  8. SQLServer 之 树查询

    一.SqlServer树查询 1.使用公用表表达式(CTE) 很多人可能想要查询整个树形表关联的内容都会通过循环递归来查...事实上在微软在SQL2005或以上版本就能用别的语法进行查询,下面是示例. ...

  9. lenovo E431 win8系统 安装win7

    事由:新买的lenovo e431 原装win8系统.win8系统本来就不好用,又傻傻的装了win10的预览版,丑死不说,还各种驱动不兼容,每次开机都提示不兼容——本人有点洁癖,见不得这种,本想把不兼 ...

  10. iOS后台播放音乐

    iOS实现在后台播放音乐 iOS4之后就支持后台播放音频了.只需下面两步就可以实现后台播放音频操作了. 1. 在Info.plist中,添加"Required background mode ...