2

約 30 個のアイテムを含むリスト ビューがあります。下にスクロールすると、リストの一番下に移動し、ユーザーがリストに触れても停止しません。

リストビューがタッチされたときにスクロールを停止する方法はありますか?同時に、ユーザーはonItemClick(既に処理されています)を使用してナビゲートできるはずです..

ありがとうございました!

4

3 に答える 3

6

を使用しsmoothScrollByます。

@Override 
public boolean onTouchEvent(MotionEvent ev) 
{ 
    switch (ev.getAction()) 
    {
        case MotionEvent.ACTION_UP:
            this.smoothScrollBy(0, 0); 
            break; 
    } 
    return super.onTouchEvent(ev);
}
于 2013-04-03T08:51:38.810 に答える
0

リストビューでdispatchTouchEventをオーバーライドする

@Override
public boolean dispatchTouchEvent(MotionEvent ev){
   if(ev.getAction()==MotionEvent.ACTION_MOVE){
      return true;
   }return super.dispatchTouchEvent(ev);
}
于 2016-06-22T10:21:15.330 に答える
0

Nitin Guptaの答えを参照して、私は自分自身を思いつきました:

public class OnTouchListenr implements OnTouchListener{

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if(event.getAction()==MotionEvent.ACTION_DOWN)  
        {
            businessResultListView.smoothScrollBy(0, 0); 
            return true;
        }

        return false;
    }          
}

次に、次のようにリスト ビューに OnTouchListener を設定します。

businessResultListView.setOnTouchListener(new OnTouchListenr());
于 2013-04-03T09:37:17.193 に答える