【问题标题】:Android Gallery: how to detect that an item has shifted in Gallery (and shift direction)Android Gallery:如何检测项目在 Gallery 中已移动(和移动方向)
【发布时间】:2012-10-30 19:59:44
【问题描述】:

按照here 的建议,我正在使用基于Gallery 的Cover-flow。
是否有可以捕捉到的事件表明我的画廊/封面流中发生了一次移位(左或右)?
需要明确的是,如果我给画廊一个不错的滑动并且我的中心(选定的)图像已经改变了 8 次,我想捕捉这个事件 8 次。

OnFling() 只表示一次滑动 - 无论有多少项目移动。
在滑动之前和之后获取getSelectedItemPosition() 并没有帮助,因为我需要在每个班次中做一些工作。
当我在做这件事时,也能很好地了解转变的方向——无论是向右还是向左。

【问题讨论】:

    标签: android gallery coverflow


    【解决方案1】:

    如果我理解正确,您应该实现this 接口并使用setOnItemSelectedListener 方法将其设置为您的图库,setCallbackDuringFling 可能会有用。
    要获得投掷方向,您可以保存最后选择的位置并将其与新位置进行比较。

    【讨论】:

    • 尼古拉,谢谢您的回复。我已经尝试了您的两个建议,但它们并没有完成我所需要的。他们不会在每个项目的每个班次上都被调用,我需要在每个项目班次上做一些工作,这意味着 - 每次中心的图像发生变化。
    • 您好 Nikolay,虽然此解决方案不会在每个班次中引发事件,但它会在每 2 或 3 个班次发生一次。如果我的画廊有 20 个元素,我可以捕获元素 0、2、5、7、9、11、14、16、19 的事件——例如,这就足够了。因此,我接受您的解决方案,非常感谢您。
    猜你喜欢
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    • 2011-10-23
    • 1970-01-01
    • 2012-08-27
    • 1970-01-01
    • 2021-01-20
    • 1970-01-01
    相关资源
    最近更新 更多