public class SimAdapter extends BaseAdapter { private ViewHolder viewHolder; private boolean isScroll = false; public void setScrollState(boolean b) { isScroll = b; } @Override public int getCount() { return list .size(); } @Override public Object getItem(int position) { return list .get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(final int position, View rootView, ViewGroup parent) { if (rootView == null) { viewHolder = new ViewHolder(); rootView = LayoutInflater.from(mContext).inflate(R.layout.qiudui_bisai, null); viewHolder.t1 = (TextView) rootView.findViewById(R.id.t1); viewHolder.r1 = (RoundImageView) rootView.findViewById(R.id.r1); rootView.setTag(viewHolder); } else { viewHolder = (ViewHolder) rootView.getTag(); } if (!isScroll) {ImageLoader.getInstance().displayImage("url", viewHolder.r1);viewHolder.t1.setText(riqi);} return rootView; } class ViewHolder { TextView t1; RoundImageView r1;
mListView1.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void onScrollStateChanged(AbsListView view, int scrollState) { if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) { simAdapter.setScrollState(false); } else if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_FLING) { simAdapter.setScrollState(true); } else if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) { simAdapter.setScrollState(true); } simAdapter.notifyDataSetChanged(); } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { if (firstVisibleItem + visibleItemCount == totalItemCount) {//滑动了底部 } } });