如何在安卓中制作填心动画

原文:https://www . geesforgeks . org/如何在安卓中制作填充心脏动画/

animated vectordrawinable类在 API 21 中引入,用于将Vector drawinable制作成漂亮且轻松的动画。使用 AnimatedVectorDrawable,可以:

  • 旋转、缩放、平移矢量图形
  • 将矢量绘制成动画,如填充颜色等。
  • 绘制路径并进行路径变形

一个动画矢量可绘制元素有一个矢量可绘制属性,以及一个或多个目标元素。目标元素可以通过安卓:名称属性指定其目标,并通过安卓:动画属性将目标与适当的对象动画器或动画器集链接。

绘制心填充动画的方法:

  1. 值目录中创建新的 heart.xml 文件,并添加以下矢量可绘制路径数据和路径命令:

    heart . XML

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- geometry -->
    <string name="heart_empty_path">
        M32.95, 19 C31.036, 19 29.199, 19.8828338 28,
        21.2724796 C26.801, 19.8828338 24.964, 
        19 23.05, 19 C19.6565, 19 17, 21.6321526 17,
        24.9945504 C17, 29.1089918 20.74, 32.4713896 
        26.405, 37.5667575 L28, 39 L29.595, 37.5667575 C35.26,
        32.4713896 39, 29.1089918 39, 24.9945504 C39,
        21.6321526 36.3435, 19 32.95, 19 L32.95, 
        19 Z M28.1155, 35.9536785 L28, 36.0572207 L27.8845,
        35.9536785 C22.654, 31.2506812 19.2,
        28.1444142 19.2, 24.9945504 C19.2, 22.8201635 20.8555,
        21.1798365 23.05, 21.1798365 C24.744, 
        21.1798365 26.394, 22.2643052 26.9715, 23.7520436 
        L29.023, 23.7520436 C29.606, 22.2643052 31.256,
        21.1798365 32.95, 21.1798365 C35.1445, 
        21.1798365 36.8, 22.8201635 36.8,
        24.9945504 C36.8, 28.1444142 33.346,
        31.2506812 28.1155, 35.9536785 L28.1155,
        35.9536785 Z
    </string>

    <string name="heart_full_path">
        M28, 39 L26.405, 37.5667575 C20.74,
        32.4713896 17, 29.1089918 17, 
        24.9945504 C17, 21.6321526 19.6565,
        19 23.05, 19 C24.964, 19 26.801, 19.8828338 28,
        21.2724796 C29.199, 19.8828338 31.036, 19 32.95,
        19 C36.3435, 19 39, 21.6321526 39, 24.9945504 C39,
        29.1089918 35.26, 32.4713896 29.595,
        37.5667575 L28, 39 L28, 39 Z
    </string>

    <string name="heart_clip_hidden">
        M18 37 L38 37 L38 37 L18 37 Z
    </string>

    <string name="heart_clip_shown">
        M0 0 L56 0 L56 56 L0 56 Z
    </string>
</resources>