添加一个动画效果
发现动画没执行完 就直接跳转或者finish掉
- player.startAnimation(anim);
- anim.setAnimationListener(new AnimationListener() {
- @Override
- public void onAnimationStart(Animation animation) {
- // TODO Auto-generated method stub
- }
- @Override
- public void onAnimationRepeat(Animation animation) {
- // TODO Auto-generated method stub
- }
- @Override
- public void onAnimationEnd(Animation animation) {
- // TODO Auto-generated method stub
- finish();
- }
- });
- overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
player.startAnimation(anim); anim.setAnimationListener(new AnimationListener() { @Override public void onAnimationStart(Animation animation) { // TODO Auto-generated method stub } @Override public void onAnimationRepeat(Animation animation) { // TODO Auto-generated method stub } @Override public void onAnimationEnd(Animation animation) { // TODO Auto-generated method stub finish(); } }); overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);
在onAnimationEnd 添加自己想要的动作就行
相关推荐
从给定的文件信息中,我们可以了解到如何通过设置动画监听事件来判断动画是否已经结束,并在动画结束后执行特定的代码。这在Android开发中是一个常见的需求,尤其是在进行Activity间的跳转或对当前Activity进行操作...
为了实现循环翻转,我们使用`AnimationListener`的`onAnimationEnd()`方法,当翻转动画结束时,再次启动翻转回正面的动画。这样,视图就会在正反两面之间持续翻转。 此外,为了监听每一面的点击事件,我们可以在`...
在Android中,可以使用OnTouchListener来实现,当用户按下并持续一段时间后开始录音,上滑则需要监听滑动事件,如GestureDetector或Scroller类,判断上滑动作并取消录音。 3. **动画设计**: 在录音过程中,话筒图标...
为了实现用户触发的翻折动画,需要正确处理触摸事件,如`MotionEvent.ACTION_DOWN`、`ACTION_UP`和`ACTION_MOVE`,并根据触摸位置判断翻页的方向。 9. **动画缓存**: 对于复杂的动画,可以考虑使用预渲染的位图...
在本文中,我们将深入探讨如何在Android应用中处理GIF,并实现序列帧动画的开始和结束监听。这通常是通过自定义View或者使用第三方库来实现的。 首先,我们关注的是“序列帧动画”。序列帧动画是通过连续播放一系列...
一些较旧的Android版本可能不支持某些动画特性,因此需要使用条件判断来适配。 通过以上步骤,你可以在Android应用中实现一个点击后变为旋转的圆圈的刷新按钮。这种交互方式常见于许多流行的应用,可以显著提高用户...
作为开发者,你也可以通过检查`WindowManager.LayoutParams.FLAG_ANIMATION_DISABLED`标志来判断动画是否被禁用。如果被禁用,可以提示用户开启动画或者提供无动画版本的界面切换。 以上就是实现Android左右屏切换...
这需要重写onTouchEvent()方法,判断ACTION_DOWN和ACTION_UP事件,确保在合适的时间启动和结束动画。 此外,为了使动画流畅,我们需要考虑性能优化。在Android中,过度的UI更新会导致不必要的屏幕重绘,影响性能。...
4. **状态判断**:为避免重复应用动画,需要检查当前项是否正在显示动画。这通常通过设置一个标记或者使用View的Tag来实现。 5. **滑动事件**:如果你希望在用户滑动ListView时触发特定动画,可以监听...
9. **触摸事件处理**:通过onTouchEvent()方法监听用户触摸事件,判断是否结束引导动画并跳转到主应用界面。 10. **性能优化**:考虑使用硬件加速、减少过度绘制、使用Lottie动画库(适用于JSON格式的After Effects...
5. **触摸事件处理**:如果需要用户点击触发动画,我们需要在自定义View中重写`onTouchEvent()`方法,判断用户的触摸动作,根据ACTION_DOWN和ACTION_UP事件启动和停止动画。 6. **动画监听器**:添加`Animator....
可以通过`invalidate()`方法通知系统重绘,或者在动画结束时调用`requestLayout()`来更新布局。 代码示例: ```java public class ZoomableImageView extends ImageView { private GestureDetector ...
4. **更新数据源**:动画结束后,实际从数据源中移除对应的项,并通知ListView更新视图。 5. **同步界面状态**:确保UI与数据源保持一致,避免出现视图与数据不匹配的问题。 在源码中,开发者可能会看到如何使用`...
动画结束后,需要更新`FoldableLayout`的状态,以便正确显示展开或折叠后的视图。 5. **动画的平滑性**:为了保证良好的用户体验,动画应尽可能平滑。这可能需要调整动画的持续时间、插值器等参数。 6. **性能优化...
例如,使用AccelerateDecelerateInterpolator可以使动画在开始和结束时慢速,中间快速,这样看起来更加自然。 除了核心的动画实现,还要注意一些细节处理。例如,当ListView滚动到底部或者顶部时,需要判断是否应该...
在onTouchEvent()方法中,可以通过比较手指触摸屏幕的起始位置和结束位置来判断滑动方向,并启动相应的翻页动画。 7. **视图状态管理**:在翻页过程中,需要同时处理当前页和下一页的状态,确保翻页的平滑过渡。这...
当监听动画结束的动作,在动画结束的时候开启一个线程,这个线程中绑定一个Handler,并在这个Handler中调用goHome方法,而通过postDelayed方法使这个方法延迟500毫秒执行,达到达到持续显示第一屏500毫秒的效果。...
一种方法是在`start()`方法中设置一个标志,并在`stop()`方法中清除它,然后通过这个标志来判断动画的状态。例如: ```java class MyAnimationDrawable extends AnimationDrawable { private boolean isRunning =...
当动画开始时,用户无法触摸到图片,因此可以监听触摸事件的变化来判断动画是否开始或结束。例如,可以在`MotionEvent.ACTION_DOWN`和`MotionEvent.ACTION_UP`事件中处理逻辑。 6. **自定义监听器**: 为了更精确...