gpt4 book ai didi

android - 在android中的 ListView 滚动上设置动画

转载 作者:行者123 更新时间:2023-11-29 15:07:29 25 4
gpt4 key购买 nike

我想在用户滚动 ListView 时为 ListView 设置动画。我在加载时为 ListView 设置动画,但我想为滚动设置动画。

这是我在 eclipse 中的动画文件:

<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="schemas.android.com/apk/res/android";
android:duration="900" android:fromXDelta="-100%p"
android:interpolator="@android:anim/linear_interpolator"
android:repeatCount="0" android:repeatMode="reverse"
android:fillEnabled="true" android:fillAfter="true" android:toXDelta="0%p" >
</translate>

此代码是将项目设置为我的 ListView :

@Override public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
StructNote item = getItem(position);
if (convertView == null) {
convertView = G.inflater.inflate(R.layout.adapter_notes, parent, false);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.fill(this, item, position); return convertView;
}

这是一个将动画设置为 ListView 的 ActivityMain

ListView lstContent = (ListView) findViewById(R.id.lstContent);
Animation animation = AnimationUtils.loadAnimation(this, R.anim.translate);
lstContent.setLayoutAnimation(new LayoutAnimationController(animation));

谁能帮帮我??

最佳答案

ListView 适配器:

Animation scaleUp;

public MyAdapter(...) {
//...
scaleUp = AnimationUtils.loadAnimation(activity, R.anim.scale_up_fast);
}

public View getView(final int position, View convertView, ViewGroup parent) {

CardView cv;

if (convertView == null){
inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.your_layout, parent, false);
}
cv = (CardView) convertView.findById(R.id.yourView);//Change this to your view
cv.startAnimation(scaleUp);
}

动画:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

<scale
android:duration="300"
android:fromXScale="0"
android:fromYScale="0"
android:pivotX="50%"
android:pivotY="50%"
android:toXScale="1"
android:toYScale="1" />
</set>

关于android - 在android中的 ListView 滚动上设置动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35696639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com