Arn*_*aud 5 animation android listview gesture
这是关于Android ListViews,Gestures和Animations的一个开放性问题.我真的不熟悉Android中的手势,所以我只是在寻找想法和灰色内容.
这里有两个屏幕截图和一个视频示例,说明了我正在尝试思考的问题.考虑看一下视频,这真的很值得.


截图来自此处的iOS开源项目.
问题是,你将如何实现像我在iPhone/iPad应用程序中越来越常见的"listview开放"手势,但对于Android?
编辑1,想法1:
好吧,首先想一想,AFAIK的Pinch手势有点像拖动手势,所以我想我们可以在屏幕上获得两个手指的X和Y坐标?
接下来,这个问题的答案可能有所帮助,基本思路是:
获取列表中第一个可见项的索引位置
获取列表中最后一个可见项的索引位置
使用getChildAt 函数从第一个索引迭代到最后一个索引
对于每个子节点,调用getLocationOnScreen 方法以获取当前迭代项的坐标
之后,可以在循环内部完成捏合手势坐标和每个项目坐标之间的一些比较,以获得必须插入新行的两个项目.
性能考虑appart我认为它可以工作,但也许有一个更简单的方法来获得这两个项目(?).
谁是下一个?:)
更新:
感谢小费@rhlnair,我借此机会告诉大家我在业余时间开始研究这个问题,欢迎您随时为此提供帮助.
该项目位于https://github.com/arnaudbos/Android-GestureListView.我在两个不同的分支上开始了两个不同的实现,并且会喜欢任何人创建一个新的分支.
我在分支"尝试通过比例 - 手势检测器"中有一些非常令人鼓舞的东西,但是ListView有一些副作用.
来吧伙计们!
当执行捏合手势时,您有两个手指放在屏幕上,因此有一个点位于这两点的中间。这是找到中间点的简单欧几里得算术。
然后按照你所说的在列表中找到该点位于上面的元素。你提到性能,我认为这不会成为问题。您迭代循环几次并询问坐标。我在触摸事件上做得更糟。
如果捏合点位于列表项中间上方,则您将在上方创建项目,反之亦然。
请参阅底部使用比例侦听器的部分: http://android-developers.blogspot.com/2010/06/making-sense-of-multitouch.html
使用比例侦听器,您可以使用比例来确定是否创建了新元素。如果比例高于(您正在“缩小”)阈值,您将创建一个新元素并让视图从列表适配器重新填充。
| 归档时间: |
|
| 查看次数: |
1656 次 |
| 最近记录: |