Max*_*Max 3 animation android listview android-animation android-listview
我有跟随动画来飞入我的ListView中的项目:
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="500"
android:fromYDelta="100%p"
android:toYDelta="0" />
<alpha
android:duration="500"
android:fromAlpha="0.0"
android:toAlpha="1.0" />
</set>
Run Code Online (Sandbox Code Playgroud)
并在我的适配器中的getView()末尾使用以下命令启动它:
Animation animation = AnimationUtils.loadAnimation(
MainActivity.myContext, R.anim.push_up_in);
vi.startAnimation(animation);
animation = null;
Run Code Online (Sandbox Code Playgroud)
它的作用:在应用程序开始时,它会立即在一个块中立即可见的项目中.通过滚动每个新项目单独飞行.
我想要的是:每个项目都应该在应用程序的开头单独飞行- 就像通过滚动一样.
我尝试了什么:根据项目位置设置AnimationDuration:
if (position < 6){
animation.setDuration(500 * position);
} else {
animation.setDuration(100*position); //Because it get's too slow by staying with 500 * position
}
Run Code Online (Sandbox Code Playgroud)
这或多或少都有效 - 但是当屏幕可以容纳超过6个我认为的项目时,它看起来并不流畅.
有没有一种简单的方法来获得每个项目更流畅的飞行?
提前致谢!
小智 5
我建议你试试这个漂亮的库:ListViewAnimations
"ViewAnimations是一个开源Android库,允许开发人员轻松创建带有动画的ListView.如果您引用此项目并在您的应用中包含许可证,请随意在Android应用中使用它.提及haarman.niek [at] gmail.com关于你的应用程序使用这个库非常欢迎!用"打开你的消息标题"
https://github.com/nhaarman/ListViewAnimations
| 归档时间: |
|
| 查看次数: |
5881 次 |
| 最近记录: |