我有一个未排序的整数ListView。我想按下一个按钮时按整数的升序排序这个列表。我也想为排序设置动画。我希望在排序时看到动画的项目并添加回Listview我有一种排序整数的方法。我不知道如何在不选择任何视图的情况下调用此动画,因为我想在按钮上单击进行排序。我对如何获取项目的位置感到困惑。 有人请帮帮我。谢谢。
排序方法:
public static void swap(List<Integer> sort, int i, int j) {
int tmp = sort.get(i);
sort.set(i, sort.get(j));
sort.set(j, tmp);
}
public static void doSort(List<Integer> sort) {
int min;
for (int i = 0; i < sort.size(); ++i) {
//find minimum in the rest of array
min = i;
for (int j = i + 1; j < sort.size(); ++j) {
if (sort.get(j) < sort.get(min)) {
min = j;
}
}
//do swap
swap(sort, i, min);
}
}
我将它用于动画:
animation = AnimationUtils.loadAnimation(this,
R.anim.slide_up_left);
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
doSort(myList);
listAdapter.notifyDataSetChanged();
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
}
});