I'm not sure if it's the best way but you can try something like this:
- get screen height
- count currently visible items (listView.getLastVisiblePosition() - listView.getFirstVisiblePosition())
- calculate height of one item (I assume here that all items have the same height): screenheight/numOfItems
- if you have Y coordinate of your touch event when fling starts you can calculate which item from the top was clicked: posY/itemHeight
- now you can get your item: listView.getItemAtPosition(listView.getFirstVisiblePosition() + valueCalculatedInPreviousPoint)
I didn't tested it so it may not work, it's just an idea.
EDIT:
And there is also this lib: https://github.com/47deg/android-swipelistview you can use it or look how they implemented it.