6

ListActivityメイン ビューに がある Android アプリがあります。リストにはLinearLayoutTextView非表示の削除ボタンが含まれています。デフォルトでは、削除ボタンは非表示になっています。フリングジェスチャを使用してボタンを表示したい。stackoverflow の質問番号937313のおかげで、フリング ジェスチャを検出できました。onTouch リスナーはListView. アイテムは必ずしも選択されているとは限らないため、getSelected* メソッドを確実に使用することはできません。を使用しているSimpleListAdaptorため、 のビュー オブジェクトに直接アクセスできませんListView

何か案は?

4

1 に答える 1

14

AbsListView.pointToPosition()を使用して、リスト ビューの X、Y 座標のリスト項目を決定してみてください。

# 937313onFling()のレシピを使用している場合、次のように多かれ少なかれオーバーライドできるはずです。

@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
    }
}
于 2009-09-01T05:36:16.870 に答える