-
android怎么监听帧动画播放完毕25
现在我做了一个帧播放动画,播放完毕后想让动画消失,现在不知道帧动画怎么监听自己结束,或者说是不知道动画什么时间播放完。initAnimationImage = BitmapFactory.decodeResource(this.getResources(), R.drawable.animation_head_fog); animationDrawable = new AnimationDrawable(); for (int frame = 0; frame < 4; frame++) { Bitmap bitmap = Bitmap.createBitmap(initAnimationImage, frame * (98 + 3) + 1, 1, 98, 76); animationDrawable.addFrame(new BitmapDrawable(bitmap), 50); } initAnimationImage.recycle(); animationDrawable.setOneShot(false); setBackgroundDrawable(animationDrawable); animationDrawable.start();
这是我的的代码,请问我怎么知道这个帧动画什么时间执行完!
问题补充:rayleeya 写道你应该使用 Animation 和 AnimationListener接口:
public static interface AnimationListener {
void onAnimationStart(Animation animation);
void onAnimationEnd(Animation animation);
void onAnimationRepeat(Animation animation);
}
具体可以看google或者ApiDemos
谢谢,但这动画播放不能设置AnimationListener监听的,Animation好像也不能实现帧动画播放的效果吧,这些方法我都试过了,暂时的解决方法是新建一个线程,让他来监听我的帧动画什么时间播放完,希望有更好的方法!
问题补充:alishan 写道调用:
boolean isRunning()
Indicates whether the animation is currently running or not.
谢谢,这个函数是其他对象主动调用帧动画时才好用,现在我是想在帧动画播放完之后去执行另外一件事!类似AnimationListener的AnimationEnd方法2011年3月04日 17:10
2个答案 按时间排序 按投票排序
-
你应该使用 Animation 和 AnimationListener接口:
public static interface AnimationListener {
void onAnimationStart(Animation animation);
void onAnimationEnd(Animation animation);
void onAnimationRepeat(Animation animation);
}
具体可以看google或者ApiDemos2011年3月09日 13:17
-
调用:
boolean isRunning()
Indicates whether the animation is currently running or not.2011年3月09日 13:14
相关推荐
开始动画时,我们在`onPreDraw()`回调中添加了开始监听,而停止动画时,我们设置了`setOneShot(true)`以确保动画只播放一次,并添加了一个`AnimationListener`来监听动画的结束。 `onAnimationFrameStart()`和`...
在Android应用开发中,帧动画(Frame Animation)是一种常见的动态效果实现方式,它通过连续播放一系列静态图片来创建动画效果,类似于电影胶片的工作原理。本资料提供了Android应用源码,专用于帧动画的实现,适合...
6. **动画执行**:在合适的时机启动属性动画,如当帧动画播放完毕后。 7. **动画组合**:通过组合帧动画和属性动画,实现礼物飞入、展示和消失的完整过程。 8. **动画监听**:添加动画监听器,以便在动画结束时进行...
- 更新监听器(AnimatorUpdateListener):在每一帧动画更新时触发,用于获取当前动画值。 2. **补间动画(Tween Animation)**: - 补间动画是属性动画的一种简化形式,主要针对View对象。它主要包括Alpha(透明...
8. **事件监听**:有时我们需要监听GIF动画的状态,比如是否播放完毕。`GIFDrawable`通常会提供相应的回调接口,可以注册监听器以获取这些信息。 9. **内存管理**:GIF文件可能会占用大量内存,因此在不需要时应...
为了实现无限轮播,我们需要监听动画的结束事件,当动画播放完毕时再次调用`start()`方法,这样就能实现无限循环: ```java ImageView imageView = findViewById(R.id.imageView); imageView.setBackgroundResource...
每张图片代表一帧,当所有帧都播放完毕后,动画就结束了。 创建序列帧动画的步骤如下: 1. 创建一个XML资源文件(通常位于res/drawable目录下),例如`animation_list.xml`,并在其中定义帧动画。这个文件包含一...
在Android中,动画主要分为两大类:补间动画(Tween Animation)和帧动画(Frame Animation)。补间动画是通过改变对象属性(如位置、大小、透明度等)在一定时间内的平滑过渡来实现动画效果;而帧动画则是通过播放...
例如,在游戏开发中,可以使用动画事件来触发角色的跳跃、攻击等行为,或在动画播放完毕后进行游戏得分的计算。 最后,该资源中提到的在线效果展示链接,提供了实际应用中的使用案例和效果演示,可以帮助开发者更好...
本文将深入探讨如何实现一个基于GIF的Android应用启动动画,并在动画播放完毕后跳转至自定义的主菜单。 1. **GIF资源准备** 在实现Android应用启动动画前,首先需要一个适合的GIF动图资源。确保GIF文件尺寸适中,...
2. `onAnimationEnd(Animation animation)`:当动画播放完毕时调用。这通常用于执行动画结束后的一些清理工作,如隐藏加载提示或进行后续逻辑处理。 3. `onAnimationRepeat(Animation animation)`:当动画重复播放...
7. **性能优化**:考虑到性能问题,可以在动画播放完毕后暂停,等待下一次刷新请求时再重新启动,避免不必要的资源消耗。 8. **可配置性**:为了使动画更具可定制性,可以提供接口或属性,让用户能自由设置动画速度...
当所有帧按顺序播放完毕后,动画将自动停止或循环播放,具体取决于`android:oneshot`属性的设置。 例如,创建一个简单的帧动画,你可能需要以下的XML代码: ```xml <animation-list xmlns:android=...
7. **服务管理**: 当铃声播放完毕,服务应该自动停止,或者在用户有其他操作时手动停止。可以使用`stopSelf()`方法来结束服务。 8. **测试与调试**: 在设备或模拟器上进行测试,确保在不同环境下都能正常播放开机...
3. **完成播放**:当视频播放完毕,PlayButton可能显示为完成状态,比如显示一个勾号或者一个不同的图标,并且提供相应的回调事件。 4. **完成后的点击事件**:在视频播放完成并变为可点击状态后,用户点击该按钮...
- **监听GIF播放状态**: 当GIF播放完毕或不再需要时,及时释放资源。 在项目中,你需要根据实际需求和设备性能选择合适的库,并合理优化内存管理,确保GIF播放的流畅性和应用的稳定性。在实际操作中,你可以参考`...
另一种常见的方式是使用开源库,例如`Lottie`,它支持导入Adobe After Effects的JSON文件,以原生动画的形式在Android上播放。这使得开发者可以轻松地实现复杂的矢量动画。 接下来,加载成功的场景需要一个清晰的...
动画播放完毕监听器 start() 开始播放动画 使用示例: public void onClick(View view) { RippleAnimation.create(view).setDuration(duration).start(); //在这里切换你的主题 } Demo下载: app-debug....
// 添加一个监听器,当视频播放完毕时,跳转到主页面 videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mediaPlayer) { Intent ...
- 可以通过监听`MediaPlayer`的状态变化,如`OnCompletionListener`来实现音乐播放完毕后的自动切换或暂停。 6. **权限管理**: - 在Android 6.0及以上版本,需要动态请求运行时权限,如`READ_EXTERNAL_STORAGE`...