美文网首页Android Study Together Android开发经验谈Android开发
Android布局动画、SVG矢量动画以及动画特效——Andro

Android布局动画、SVG矢量动画以及动画特效——Andro

作者: 辰_鱼 | 来源:发表于2019-04-02 14:57 被阅读8次

    布局动画

    定义:指作用在ViewGroup上,给ViwGroup增加View时添加一个动画过渡效果。

    最简单的布局动画:在ViewGroup的XML中,使用:

    最简单布局动画

    但该效果是Android 默认的现实的过渡效果,且不能使用自定义的动画来替换。

    还可通过LayoutAnimationController类来自定义:

    自定义动画效果

    SVG矢量动画

    先来一起认识下SVG吧,本人也是头一次接触。

    可伸缩矢量图形(Scalable Vector Graphics)

    定义用于网络的基于适量的图形

    使用XML格式定义图形

    图像再放大或改变尺寸的情况下其图形质量不会有所损失

    SVG常用指令:

    L:绘制直线的指令,代表从当前点绘制直线到给定点。

    M:代表将画笔移动到某一点,但并不发生绘制动作。

    A:该指令用于绘制一段弧线且允许弧线不闭合。

    Android中使用SVG:

    ①VectorDrawable:创建基于XML的SVG图形,并结合AnimatedVectorDrawable来实现动画效果

    ②AnimatedVectorDrawable:给VectorDrawable提供动画效果,并通过其来连接静态的VectorDrawable和动态的ObjectAnimation。

    声明对 AnimatedVectorDrawable 的使用
    静态的 VectorDrawable

    注意:AnimatedVectorDrawable中制定的target 的name属性,必须与VectorDrawable中需要作用的name属性保持一致,否则系统找不到要实现的动画的元素。

    SVG实例:三球仪

    earth_moon_system(1)
    earth_moon_system(2)
    anim_earth/anim_sun
    sun_system 主代码

    大致效果图

    三球仪

    动画特效

    一、灵活菜单


    效果图(点击中心位置展开和收缩菜单)

    菜单展开动画的主代码,至于关闭动画与之雷同,就不提供了。

    展开动画
    按钮点击事件

    二、计时器动画

    计时器动画效果主要是当点击按钮后,数字会不断增加。我们只需借助ValueAnimator实现数字增加并将值设置给TextView即可。

    主要代码

    大致效果图

    文章到这里就结束了,大家可以好好琢磨下SVG矢量动画,并且最好能亲自实现下这两个动画特效,相信这些会对大家有些帮助的!!!

    相关文章

      网友评论

        本文标题:Android布局动画、SVG矢量动画以及动画特效——Andro

        本文链接:https://www.haomeiwen.com/subject/xwtgbqtx.html