0

在我的 android 应用程序中,我有这种情况 - 我有一个画廊,我必须在其中显示一些图像。我总共有 13 张图像,每张图像都是通过调用带有一些参数的函数获得的。

现在在我的画廊适配器中,我一次只能传递 7 张图像,当用户滚动浏览画廊时,我应该更新画廊项目。例如。我的图像是 {0,1,2,3,4,5,6,7,8,9,10,11,12}。

第一次如果用户向右滚动,我现在只能在中央显示屏上获取并显示 {3,4,5,6,7,8,9} 和 6 我想从左端删除 3 并在右侧添加 10 end 使适配器数组变为 {4,5,6,7,8,9,10},中心为 7,依此类推。

同样,如果用户向左滚动,我想从右端删除 9 并在左端添加 2,以便适配器数组变为 {2,3,4,5,6,7,8},中间为 5。

我正在使用 LinkedList 存储我的项目

我怎样才能做到这一点。请帮忙。

4

1 回答 1

0

只需使用自定义类扩展 Gallery,覆盖onFling()检测手势(左或右)并执行删除操作。

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
    if (Math.abs(velocityX) > Math.abs(velocityY)) {
        // This is an horizontal fling
            if (velocityX < 0) {
                // From left to right => go forward 
                //  remove 3
                return true;
            } else if (velocityX > 0) {
                // From right to left => go backward
                //  remove 7
                return true;
            }
    } else {
        // This is a vertical fling
    }

    return false;
}
于 2012-05-24T15:37:07.067 回答