我希望在动画中的特定帧中在我的Android应用程序中启动消息。下面我发布了存储我的帧的xml文件。
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false" >
<item android:drawable="@drawable/sy1" android:duration="210" />
<item android:drawable="@drawable/sy2" android:duration="210" />
<item android:drawable="@drawable/sy3" android:duration="210" />
<item android:drawable="@drawable/sy4" android:duration="210" />
<item android:drawable="@drawable/sy5" android:duration="210" />
<item android:drawable="@drawable/sy6" android:duration="210" />
</animation-list>
答案 0 :(得分:0)
假设您要在第4帧显示Toast消息。使用animationDrawable.getDuration(int i)
计算显示祝酒词的时间。
int STARTING_FRAME = 4;
int totalTime = 0;
for (int i = 0; i < STARTING_FRAME; i++) {
totalTime =+ animationDrawable.getDuration(i);
}
现在,只要您启动动画,就会使用handler.postDelayed(Runnable r, long delayMillis)
显示祝酒词。
animationDrawable.start();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Toast.makeText(context, "Toast text", Toast.LENGTH_SHORT).show();
}
}, totalTime);