`

Android动画入门四---动画示例

 
阅读更多
android动画类型有:
xml:
alpha:渐变透明度动画效果
scale:渐变尺寸伸缩动画效果
translate:画面转换位置移动动画效果
rotate:画面转移旋转动画效果
对应的java类:
AlphaAnimation 渐变透明度动画效果
ScaleAnimation 渐变尺寸伸缩动画效果
TranslateAnimation 画面转换位置移动动画效果
RotateAnimation 画面转移旋转动画效果
下面是各种动画的示例代码
alpha

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<alpha
android:fromAlpha="0.1"
android:toAlpha="1.0"
android:duration="3000"
/> 
<!-- 透明度控制动画效果 alpha
        浮点型值:
            fromAlpha 属性为动画起始时透明度
            toAlpha   属性为动画结束时透明度
            说明: 
                0.0表示完全透明
                1.0表示完全不透明
            以上值取0.0-1.0之间的float数据类型的数字
        
        长整型值:
            duration  属性为动画持续时间
            说明:     
                时间以毫秒为单位
-->
</set>

scale
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
   <scale  
          android:interpolator=
                     "@android:anim/accelerate_decelerate_interpolator"
          android:fromXScale="0.0"
          android:toXScale="1.4"
          android:fromYScale="0.0"
          android:toYScale="1.4"
          android:pivotX="50%"
          android:pivotY="50%"
          android:fillAfter="false"
          android:duration="700" />
</set>
<!-- 尺寸伸缩动画效果 scale
       属性:interpolator 指定一个动画的插入器
        在我试验过程中,使用android.res.anim中的资源时候发现
        有三种动画插入器:
            accelerate_decelerate_interpolator  加速-减速 动画插入器
            accelerate_interpolator        加速-动画插入器
            decelerate_interpolator        减速- 动画插入器
        其他的属于特定的动画效果
      浮点型值:
         
            fromXScale 属性为动画起始时 X坐标上的伸缩尺寸    
            toXScale   属性为动画结束时 X坐标上的伸缩尺寸     
        
            fromYScale 属性为动画起始时Y坐标上的伸缩尺寸    
            toYScale   属性为动画结束时Y坐标上的伸缩尺寸    
        
            说明:
                 以上四种属性值    
    
                    0.0表示收缩到没有 
                    1.0表示正常无伸缩     
                    值小于1.0表示收缩  
                    值大于1.0表示放大
        
            pivotX     属性为动画相对于物件的X坐标的开始位置
            pivotY     属性为动画相对于物件的Y坐标的开始位置
        
            说明:
                    以上两个属性值 从0%-100%中取值
                    50%为物件的X或Y方向坐标上的中点位置
        
        长整型值:
            duration  属性为动画持续时间
            说明:   时间以毫秒为单位

        布尔型值:
            fillAfter 属性 当设置为true ,该动画转化在动画结束后被应用
-->

translate
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:fromXDelta="30"
android:toXDelta="-80"
android:fromYDelta="30"
android:toYDelta="300"
android:duration="2000"
/>
<!-- translate 位置转移动画效果
        整型值:
            fromXDelta 属性为动画起始时 X坐标上的位置    
            toXDelta   属性为动画结束时 X坐标上的位置
            fromYDelta 属性为动画起始时 Y坐标上的位置
            toYDelta   属性为动画结束时 Y坐标上的位置
            注意:
                     没有指定fromXType toXType fromYType toYType 时候,
                     默认是以自己为相对参照物             
        长整型值:
            duration  属性为动画持续时间
            说明:   时间以毫秒为单位
-->
</set></FONT></FONT>

rotate
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate 
        android:interpolator="@android:anim/accelerate_decelerate_interpolator"
        android:fromDegrees="0" 
        android:toDegrees="+350"         
        android:pivotX="50%" 
        android:pivotY="50%"     
        android:duration="3000" />  
<!-- rotate 旋转动画效果
       属性:interpolator 指定一个动画的插入器
             在我试验过程中,使用android.res.anim中的资源时候发现
             有三种动画插入器:
                accelerate_decelerate_interpolator   加速-减速 动画插入器
                accelerate_interpolator               加速-动画插入器
                decelerate_interpolator               减速- 动画插入器
             其他的属于特定的动画效果
                           
       浮点数型值:
            fromDegrees 属性为动画起始时物件的角度    
            toDegrees   属性为动画结束时物件旋转的角度 可以大于360度   

        
            说明:
                     当角度为负数——表示逆时针旋转
                     当角度为正数——表示顺时针旋转              
                     (负数from——to正数:顺时针旋转)   
                     (负数from——to负数:逆时针旋转) 
                     (正数from——to正数:顺时针旋转) 
                     (正数from——to负数:逆时针旋转)       

            pivotX     属性为动画相对于物件的X坐标的开始位置
            pivotY     属性为动画相对于物件的Y坐标的开始位置
                
            说明:        以上两个属性值 从0%-100%中取值
                         50%为物件的X或Y方向坐标上的中点位置

        长整型值:
            duration  属性为动画持续时间
            说明:       时间以毫秒为单位
-->
</set>


使用xml的动画效果
public static Animation loadAnimation (Context context, int id) 
//第一个参数Context为程序的上下文    
//第二个参数id为动画XML文件的引用
//例子:
myAnimation= AnimationUtils.loadAnimation(this,id);
//使用AnimationUtils类的静态方法loadAnimation()来加载XML中的动画XML文件




另外,在java代码中定义动画如下:
//在代码中定义 动画实例对象
private Animation myAnimation_Alpha;
private Animation myAnimation_Scale;
private Animation myAnimation_Translate;
private Animation myAnimation_Rotate;
    
    //根据各自的构造方法来初始化一个实例对象
myAnimation_Alpha=new AlphaAnimation(0.1f, 1.0f);

myAnimation_Scale =new ScaleAnimation(0.0f, 1.4f, 0.0f, 1.4f,
             Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);

myAnimation_Translate=new TranslateAnimation(30.0f, -80.0f, 30.0f, 300.0f);

myAnimation_Rotate=new RotateAnimation(0.0f, +350.0f,
               Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF, 0.5f);



然后使用从View父类继承过来的方法startAnimation()来为View或是子类View等等添加一个动画效果
分享到:
评论

相关推荐

    Android动画入门教程之kotlin

    Android动画入门教程之kotlin Android动画入门教程之kotlin是近期学习kotlin...Android动画入门教程之kotlin提供了关于Android动画入门教程之kotlin的相关资料,通过示例代码介绍的非常详细,需要的朋友可以参考借鉴。

    Android入门手册-中文版

    根据给定的“Android入门手册-中文版”的文件信息,我们可以从中提炼出一系列与Android开发相关的知识点,这些知识点覆盖了从Android系统的基本概念到实际应用开发的各个环节。下面,我们将详细解析这些知识点。 ##...

    Android从入门到精通--书中全部源代码(带注释)

    《Android从入门到精通》是一本为初学者和有经验的开发者提供的全面学习指南,它涵盖了Android开发的基础到高级主题。这份压缩包包含了书中所有的源代码,这些代码带有注释,便于读者理解并实践。通过深入研究这些源...

    android动画小示例

    本示例“android动画小示例”将带你入门Android动画的基本使用,无论你是新手还是有经验的开发者,都能从中找到启发。 属性动画是Android 3.0(API级别11)引入的新特性,它允许我们对对象的属性进行动画操作,这些...

    OpenGL ES 2 for Android A Quick-Start Guide

    ### OpenGL ES 2 for Android 快速入门指南 #### 一、引言 《OpenGL ES 2 for Android: A Quick-Start Guide》是一本专为Android开发者设计的实用指南,旨在帮助读者快速掌握OpenGL ES 2的核心概念和技术,并应用...

    Android入门精通示例源码

    "Android入门精通示例源码"是一个非常适合初学者及进阶者的学习资源,它包含了从基础到高级的各种示例,帮助开发者逐步熟悉并掌握Android应用程序开发的核心技能。 首先,我们要了解Android的基本架构。Android系统...

    Android用户接口开发入门手册-英文版

    这份"Android用户接口开发入门手册"英文版为开发者提供了一个深入理解Android UI设计和实现的基础教程。以下是对该手册内容的详细概述: 1. **Android UI体系结构**:Android UI基于组件驱动的模型,主要包括...

    Android-一个展示Android的物理动画的playground

    总之,"Android-一个展示Android的物理动画的playground"是一个宝贵的教育资源,对于想要深入Android动画开发的开发者来说,这是一个不可多得的实践平台。通过研究和实践,开发者不仅可以提升技术技能,还能激发创新...

    Google Android开发入门与实战(pdf和源代码)

    《Google Android开发入门与实战》是一本专门为初学者和开发者准备的指南,旨在帮助读者快速掌握Android应用开发的基础知识,并通过实战项目加深理解。这本书涵盖了从Android开发环境的搭建到实际应用开发的全过程,...

    Android入门到精通详解(完整书签)

    - **软件结构和使用的工具**:Android的软件架构分为四层:Linux内核、运行时库、应用程序框架和应用程序层。开发过程中主要使用的工具有Android Studio、Android SDK Manager等。 ##### 第2章:Android SDK的开发...

    Android高级应用源码-自定义控件入门级demo.zip

    本示例"Android高级应用源码-自定义控件入门级demo.zip"旨在帮助开发者深入理解自定义控件的基本概念和实现方法。通过分析提供的两个示例项目"zdyview"和"zdyview2",我们可以学习到以下几个关键知识点: 1. **...

    Android游戏开发教程示例-高清带目录

    在Android游戏开发的世界里,本书“Android游戏开发教程示例-高清带目录”提供了一条清晰的学习路径,适合初学者入门。它以实际创建一款游戏为线索,将各种开发概念和技巧贯穿其中,旨在帮助读者从零开始构建自己的...

    Android代码-LGame-0.3.zip

    总之,"Android代码-LGame-0.3.zip"是一个专注于Android游戏开发的资源包,提供了一个便捷的2D游戏开发环境,包括了框架库、示例代码、文档和其他辅助资源,旨在帮助开发者快速入门并高效地构建自己的游戏应用。

    逐帧动画入门

    本文将深入探讨“逐帧动画入门”这一主题,基于提供的标签和压缩文件名,我们可以推测这是关于Android平台上的一个学习资源,可能包含了一系列的源代码示例。 逐帧动画是一种常见的动画形式,它通过连续播放一系列...

    Android新手入门2016(16)--画图

    此外,Android的`SurfaceView`和`TextureView`提供了在后台线程中进行连续绘图的能力,适用于游戏或动画场景。它们可以提高性能,避免UI线程阻塞。 总之,Android的画图机制是多样的,从简单的文本和形状到复杂的...

    arcgis-runtime-samples-android-100.4-master.zip

    《ArcGIS Runtime for Android开发入门指南》 ArcGIS Runtime for Android是Esri公司提供的一款强大的地理信息系统(GIS)开发框架,用于在Android平台上构建地图应用。这个“arcgis-runtime-samples-android-100.4...

    Android高级应用源码-自定义控件入门级demo.rar

    这份"Android高级应用源码-自定义控件入门级demo"压缩包提供了学习和实践自定义控件的基础示例,旨在帮助开发者从零开始了解并掌握自定义控件的创建流程。 自定义控件的核心在于扩展Android系统提供的基础视图类,...

    Android开发实战经典-程序代码

    4. **0400_第四部分:Android应用开发**:这部分可能深入到实际应用开发的各个方面,如UI设计(使用XML布局和ConstraintLayout)、动画效果、通知(Notification)、后台运行(Background Execution Limits)、手势...

    cosos2d-ios

    13. **示例代码**:IOScocos2d学习压缩包中的示例代码是实践学习的好材料,通过实际运行和修改代码,能加深对cocos2d-iOS的理解。 总之,cocos2d-iOS为iOS游戏开发提供了一个全面而强大的工具集,无论你是刚接触...

    自定义View入门---自定义一个TextView

    这只是一个基础示例,实际上,自定义View可以实现更复杂的交互和视觉效果,如动画、手势识别等。不断实践和探索,你会发现自定义View能为你的应用带来无限可能。 在"View02"压缩包文件中,可能包含有更详细的代码...

Global site tag (gtag.js) - Google Analytics