Android 将动画集应用于可绘制的形状

Android 将动画集应用于可绘制的形状,android,android-drawable,android-vectordrawable,android-shapedrawable,Android,Android Drawable,Android Vectordrawable,Android Shapedrawable,我有以下可绘制的red_dot.xml: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > <solid android:color="#f00" /> <size android:width="30dp"

我有以下可绘制的red_dot.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" >
    <solid android:color="#f00" />
    <size
        android:width="30dp"
        android:height="30dp"/>
</shape>

以及动画pulse.xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <alpha
        android:fromAlpha="1.0"
        android:toAlpha="0.0"
        android:duration="1000"
        android:repeatMode="reverse"
        android:repeatCount="infinite" />
</set>

如何将动画应用于XML文件中的可绘制,例如红色点动画?如果red_dot.xml是一个矢量文件,那么以下内容是可能的(但事实并非如此,因为我们有一个形状)


您可以创建一个简单的
视图
并将
红点
设置为背景,然后将
动画
应用于该
视图

<View
  android:layout_width="30dp"
  android:layout_height="30dp"
  android:background="@drawable/red_dot"
  android:id="@+id/anime_view"
/>

View animeView = findViewById(R.id.anime_view);//Apply animation to animeView

查看动画视图=findViewById(R.id.anime\u视图)//将动画应用于animeView

将其放在可绘制的XML中有直接用于TextView的drawableLeft等的优点。。
<View
  android:layout_width="30dp"
  android:layout_height="30dp"
  android:background="@drawable/red_dot"
  android:id="@+id/anime_view"
/>

View animeView = findViewById(R.id.anime_view);//Apply animation to animeView