Android AbsListView 的item动画类库 —— JazzyListView

https://github.com/twotoasters/JazzyListView/tree/master/sample

github:https://github.com/twotoasters/JazzyListView

使用这个类库还是很简单的,引入它的库,使用库里所定义的ListView和GridView即可。

如需要自定义一个动画效果,那么实现一个JazzyEffect,并添加到JazzyHelper中即可。

里面的自定义属性

[html] view plain copy

print?

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <!-- android.widget.AbsListView 都可以用的 动画效果 -->
  4. <declare-styleable name="JazzyListView" >
  5. <attr name="effect" format="enum" >
  6. <!--   -->
  7. <enum name="standard" value="0" />
  8. <!-- 成长型,从小变大 -->
  9. <enum name="grow" value="1" />
  10. <!-- 卡片 翻开 -->
  11. <enum name="cards" value="2" />
  12. <!-- 盘绕在左,向右展开 -->
  13. <enum name="curl" value="3" />
  14. <!-- 波浪式:左到右  -->
  15. <enum name="wave" value="4" />
  16. <!-- 蹦跳式 -->
  17. <enum name="flip" value="5" />
  18. <!-- 类型卡片,飞滚式 -->
  19. <enum name="fly" value="6" />
  20. <!-- 跟上面类,反向 -->
  21. <enum name="reverse_fly" value="7" />
  22. <!-- 螺旋 -->
  23. <enum name="helix" value="8" />
  24. <!-- 扇形飘动 -->
  25. <enum name="fan" value="9" />
  26. <!-- 倾斜,看起来是 挻起来的效果 -->
  27. <enum name="tilt" value="10" />
  28. <!-- 拉链式, 左右交织 -->
  29. <enum name="zipper" value="11" />
  30. <!-- 淡到明 -->
  31. <enum name="fade" value="12" />
  32. <!-- 旋转 -->
  33. <enum name="twirl" value="13" />
  34. <!-- 滑动式 -->
  35. <enum name="slide_in" value="14" />
  36. </attr>
  37. <!-- 仅在新item 有动画 -->
  38. <attr name="only_animate_new_items" format="boolean" />
  39. <!-- 仅在飞滚时 有动画-->
  40. <attr name="only_animate_fling" format="boolean" />
  41. <!--  -->
  42. <attr name="simulate_grid_with_list" format="boolean" />
  43. <!-- 最大速率 -->
  44. <attr name="max_velocity" format="integer" />
  45. </declare-styleable>
  46. </resources>

这些属性可以通过代码设置给ListView、GridView;也可以在xml中使用。

0
时间: 2024-11-03 14:30:40

Android AbsListView 的item动画类库 —— JazzyListView的相关文章

android动画深入解析--仿58底部导航的item动画

我们在开发android的过程中,合理使用动画能够提高用户体验,带给用户耳目一新的感觉.因此我们应该掌握android的动画使用.我在开发的过程中,很少自己写动画,在github搜基本可以满足要求,但是本着打破砂锅问到底的小强精神,知其然更要知其所以然,我决定还是好好看看文档,深入的学习一下动画吧,我始终相信在复杂的动画也是有简单的动画构成的,学好基本功.从简单到复杂. 首先我去看看了官方的文档,大概要学的东西就是这些. AccelerateDecelerateInterpolator Acce

给Android ListView添加删除item动画

给Android ListView添加删除item动画 给listview删除一个item的时候加上一个折叠动画,感觉效果会好一点. 步骤是当删除一个view,先用动画把view的高度改变,看上去就是折叠的效果.当动画完成的时候,再真正把item移除. private void deletePattern(final View view, final int position) { Animation.AnimationListener al = new Animation.AnimationL

Android中的帧动画的简单使用

Android中动画主要有下面几种,帧动画(frame),补间动画(tween),属性动画(property) 我们平时项目中主要用的是帧动画和补间动画 帧动画需要我们准备一组静态图片,这些图片是通过分解动画得来的,静态图片连起来播放形成动画效果 我们在res目录下新建一个drawable目录,用来存放动画资源和xml文件 图片如下: girl.xml 注意android:oneshot="false|true" 该属性控制动画是否重复播放,false代表重复播放 <?xml v

Android之使用帧动画实现自定义loading加载布局

在项目开发过程中,我们总是需要自定义一些和项目风格类似的loading页面,这时候我们可以考虑使用帧动画来完成这一功能 假如我们要实现如下图所示的帧动画加载效果: 我们可以选取三张帧图片: 具体在帧动画中怎么使用? An AnimationDrawable defined in XML consists of a single <animation-list> element, and a series of nested<item> tags. Each item defines

创建Material Design风格的Android应用--使用自定义动画

动画在Material Design设计中给用户反馈放用户点击时,并且在程序用户界面中提供连贯的视觉.Material主题为按钮(Button)和activity的转换提供了一些默认的动画,在android5.0(api 21)和更高的版本,你可以自定义这些动画和创建一个新动画: Touch feedback(触摸反馈) Circular Reveal(循环揭露效果) Activity transitions(Activity转换效果) Curved motion(曲线运动) View stat

Android应用开发:动画开发——XML动画

引言 当今,Android.IOS二分天下,什么Tizen.COS blabla的均为蝼蚁,一看就知道是为打发领导或为花研发资金产出的产品,根本不是为了赢得市场,为的只是博得领导一笑而已,完全可以忽视.而Android开发又因为开发语言以Java为主,入门门槛极低导致基本上是个程序员,泡两天EOE,或Android Developer Training都可以过来说"哥会开发Android app了!",那么什么才能将你的App脱颖而出呢?准确的用户痛点.良好的数据结构.简单易用的交互流

android等待旋转圆圈动画

先创建一个动画的xml文件如下 <?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com" android:oneshot="false"><!--设置为false是动画不循环播放--!> <item android:drawable="@d

Android Activity的切换动画

app中Activity之间跳转方式太单调有没有...想改变一下?那就自己写呗!!!!!! 实现Acitvity之间跳转的方式有两种. 一.在AndroidManifest中定义. 1.现在res/values/styles.xml中加上一个style,如下 ? 1 2 3 4 <style name="AppTheme"mce_bogus="1"parent=" @android :style/Theme.Light"> <i

android 实现加载动画对话框

先来两张效果图        自定义对话框: public class LoadingProgressDialog extends ProgressDialog { private AnimationDrawable mAnimation; private Context mContext; private ImageView mImageView; private String mLoadingTitle; private TextView mLoadingTv; private int mR