1、用smoothScrollToPosition方法:
ListerView.smoothScrollToPosition( ListerView .getFirstVisiblePosition());
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
给ListView添加一个滑动事件:
listView .setOnScrollListener(new OnScrollListener() {
/**
* 滚动状态改变时调用
*/
public void onScrollStateChanged(AbsListView view, int scrollState) {
// 不滚动时保存当前滚动到的位置
if (scrollState == OnScrollListener.SCROLL_STATE_IDLE) {
if(
listSmooth){
mBitmapShaders.setSelection(mBitmapShaders.getFirstVisiblePosition());
listSmooth =false;
}
}
}
/**
* 滚动时调用
*/
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
Log.e("zhang", "haha First hahahaha1111111:");
}
});
再给
ListView添加一个
OnTouch事件:
listView .setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
int action = event.getAction();
switch(action){
case MotionEvent.ACTION_UP:
listSmooth =true;
break;
}
return false;
}
});
注意:
listSmooth 是一个标记,添加的目的是为了防止多次滚动。