如何最好地处理Android ListActivity的fling手势

我在主视图中有一个带有ListActivity的 Android应用程序.该列表包含一个带有TextView和隐藏删除按钮的LinearLayout.认情况下,删除按钮将被隐藏.我想用一个手势来显示按钮.由于stackoverflow上的问题# 937313,我能够检测到这种投掷手势.我不清楚如何确定列表中的哪个项目被抛出,因为onTouch监听器会监听ListView.该项不一定被选中,因此无法可靠地使用getSelected *方法.我正在使用SimpleListAdaptor,因此我无法直接访问ListView中的View Objects.

有任何想法吗?

解决方法

尝试使用 AbsListView.pointToPosition()确定列表视图中X,Y坐标的列表项.

如果您正在使用#937313中的配方,您应该能够或多或少地覆盖onFling(),如下所示:

@Override
public boolean onFling(MotionEvent e1,MotionEvent e2,float veLocityX,float veLocityY) {
    try {
        Toast.makeText(listadapter.getItem( listView.pointToPosition( (int) e1.getX(),(int) e1.getY() ).toString() );
        return super.onFling();
    } catch( Exception e ) {
        // do nothing
    }
}

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...