2017-02-26 113 views

回答

1

使用setOnScrollListener

listview.setOnScrollListener(new OnScrollListener() { 

     @Override 
     public void onScrollStateChanged(AbsListView view, int scrollState) { 

      if (scrollState == SCROLL_STATE_IDLE) { 
       isScrolling = false; 
      } 

     } 

     @Override 
     public void onScroll(AbsListView view, int firstVisibleItem, 
       int visibleItemCount, int totalItemCount) { 
      isScrolling = true; 
     } 
    }); 

,并在setOnItemClickListener做到这一点:

listview.setOnItemClickListener(new OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 

     if(!isScrolling){ 
      //do your code 
     } 

    } 
}); 
0

设置OnScrollListener在列表视图如下

setOnScrollListener(new OnScrollListener() { 
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { 
    // TODO Auto-generated method stub 
} 

public void onScrollStateChanged(AbsListView view, int scrollState) { 
    if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) { 
     Log.i("a", "scrolling stopped..."); 
     //attach the click listerner here 
    } else if(scrollState==OnScrollListener.SCROLL_STATE_TOUCH_SCROLL){ 
     //remove the click listener here 

    } 
});