一 LayoutAnimationController 的使用方法
二 ListView 与Animations 结合使用
三 AnimationListener 的使用方法
介绍LayoutAnimationController ,这个类相当重要,它可以增强用户体验.
LayoutAnimationController 用于为一个layout 里面的控件,或者是一个ViewGroup里面的控件设置动画效果
可以在xml文件中设置,也可以在java类中设置
第一种方法: 在xml文件设置
1. 在res/anim 文件夹中他建一个新文件,名为list_anim_layout.xml文件:
<layoutAnimation xmlns:android=http://schemas.android.com/apk/res/android"
android:delay="0.5" android:animationOrder="random" android:animation="@anim/list_anim" />
在0.5表示0.5秒,不再是0.5毫秒
2.在布局文件中为ListView添加如下配置 android:layoutAnimation="@anim/list_anim_layout"
第二种方法: 在java类中使用 LayoutAnimationController
1. 创建一个Animation对象: 可以通过装载xml文件,或者直接使用Animation 的构造函数创建Animation对象;
2. 使用如下代码创建LayoutAnimationController 对象: LayoutAnimationController lac = new LayoutAnimationController(animation);
3. 设置控件显示的顺序: lac.setOrder(LayoutAnimationController.ORDER_NORMAL);
4. 为ListView 设置LayoutAnimationController 属性: listView.setLayoutAnimation(lac);
具体代码请参考:layoutAnimationsTest工程
---------------------------
关于AnimationListener
AnimationListener 是一个监听器,该监听器在动画执行的各个阶段会得到通知,从而调用相应的方法
主要包括以下三个方法
onAnimationEnd(Animation animation)
onAnimationRepeat(Animation animation)
onAnimationStart(Animation animation)
实现效果如下
分享到:
相关推荐
同时,`LayoutAnimationController`的`setOrder`方法还可以接受`ORDER_RANDOM`、`ORDER_REVERSE`等参数,以实现不同动画播放顺序的效果。 总的来说,`LayoutAnimationController`是Android提供的一种强大的工具,它...
自定义LayoutAnimationController,一行代码为ViewGroup设置定制顺序的布局动画!.zip,Custom LayoutAnimationController/自定义LayoutAnimationController,一行代码搞定布局动画!
通常是在布局文件中通过`android:layoutAnimation`属性指定,或者在代码中调用`setLayoutAnimation(LayoutAnimationController)`方法。 二、LayoutAnimationController的属性 1. animation:定义动画效果,可以是...
3. **创建并应用`LayoutAnimationController`**:使用`AnimationUtils.loadAnimation()`方法加载XML定义的动画,然后通过`Animation.setAnimationController()`将动画控制器应用到ViewGroup。最后,调用`ViewGroup....
3. 使用LayoutAnimationController:如果选择使用LayoutAnimation,需要创建一个LayoutAnimationController,将自定义的Animation设置进去,并通过ListView的setLayoutAnimation()方法应用到ListView上。 四、代码...
4. **LayoutAnimationController**:如果整个界面元素需要跟随唱片机动画,可能还会使用`LayoutAnimationController`对布局中的所有子视图进行动画控制。 实现这样的效果通常涉及多个组件的协同工作,包括处理触摸...
在本文中,我们将深入探讨`LayoutAnimation`的概念及其在实际应用中的示例,特别是通过`LayoutAnimationController`的使用和与`ListView`结合的方式。`LayoutAnimation`是React Native框架中一个强大的工具,用于...
而在代码中,我们可以使用`setInAnimation()`和`setOutAnimation()`方法来指定进出场动画。 在实际开发中,`ViewFlipper`可以与Adapter结合使用,实现类似轮播图的效果。通过`PagerAdapter`的`instantiateItem()`和...
可以使用`android:layoutAnimation`属性在XML布局中配置,或通过`LayoutAnimationController`在代码中设置。 5. **动画集合(Animator Set)** `AnimatorSet`允许开发者按照特定顺序或并行播放多个动画。这在需要...
LayoutAnimationController controller = AnimationUtils.loadLayoutAnimation(context, R.anim.layout_animationFadeIn); viewGroup.setLayoutAnimation(controller); ``` 在这个例子中,`context`是应用程序的上...
通过`LayoutAnimationController`,可以为整个布局定义动画效果,比如所有元素同时出现,或逐个从不同方向飞入。 10. **触摸反馈动画(Touch Feedback Animation)** 触摸反馈动画在用户触摸屏幕时提供视觉反馈,...
- 使用`File`和`Environment.getExternalStorageDirectory()`等方法来访问外部存储设备上的文件。 ##### 5. 网络通信 - 通过`HttpDownloader`进行HTTP请求,获取在线资源。 ##### 6. XML解析 - 使用SAX解析器(`...
在Android中,可以使用`TranslateAnimation`类来实现,通过设置x和y轴的偏移量,让视图在屏幕上的位置发生变化。 缩放动画则是改变视图的大小。`ScaleAnimation`类允许我们在两个方向上调整视图的宽度和高度,从而...
LayoutAnimationController controller = AnimationUtils.loadLayoutAnimation(context, R.anim.layout_animation_fade_in); listView.setLayoutAnimation(controller); ``` 通过这种方式,每当ListView中的新项被...
LayoutAnimationController controller = AnimationUtils.loadLayoutAnimation(context, R.anim.layout_animation_fade_in); ViewGroup myLayout = (ViewGroup) findViewById(R.id.my_layout); myLayout....
在`res/anim`目录下定义XML布局动画,然后在布局的根视图上设置`android:animateLayoutChanges="true"`或者调用`ViewGroup.setLayoutAnimation(LayoutAnimationController)`来启用。 7. **自定义动画(Custom ...
7. **布局动画(Layout Animation)**:当LinearLayout的子视图被添加或删除时,可以使用LayoutAnimationController来触发布局动画,如同时出现或逐一弹出。 通过合理运用这些动画技术,开发者可以为LinearLayout中的...
如果需要设置动画的顺序和间隔,可以使用`setOrder()`和`setDelay()`方法。 4. **应用到布局**:最后,通过`ViewGroup.setLayoutAnimation()`方法将自定义的`LayoutAnimationController`应用到目标布局上。 下面是...