破解asp网站后台密码,登封做网站推广,中国新闻社官方网站,重庆电子工程listview加载图片优化的功能#xff0c; 在我们使用新浪微博的时候#xff0c;细心的同学一定发现了#xff0c;在滑动的过程中#xff0c;图片是没有被加载的#xff0c; 而是在滑动停止时#xff0c;才加载图片了。 我们今天就做一个这样的效果吧。 我们先考虑两个问题… listview加载图片优化的功能 在我们使用新浪微博的时候细心的同学一定发现了在滑动的过程中图片是没有被加载的 而是在滑动停止时才加载图片了。 我们今天就做一个这样的效果吧。 我们先考虑两个问题 1、在滑动停止的时候如何获得需要加载的图片控件 2、因为listiew在初始化完成的时候OnScrollListener的onScrollStateChanged与onScroll并未被触发如何初始化第一页的图片 package com.test.list;import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.AbsListView.OnScrollListener;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListView;public class Testa target_blank hrefhttp://www.2cto.com/kf/yidong/Android/ classkeylink styleborder:none; padding:0px; margin:0px; color:rgb(51,51,51); text-decoration:none; font-size:14pxAndroid/aListActivity extends Activity {private int start_index, end_index;// 判断是否是初始化private boolean isInit false;private ListView list;Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);this.initList();}private BaseAdapter adapter new BaseAdapter() {Overridepublic View getView(int position, View convertView, ViewGroup parent) {// TODO Auto-generated method stubView v;if (convertView null) {v getLayoutInflater().inflate(R.layout.list_item, null);v.setTag(v);} else {v (View) convertView.getTag();ImageView iv (ImageView) v.findViewById(R.id.img);iv.setImageResource(R.drawable.ic_launcher);}ImageView iv (ImageView) v.findViewById(R.id.img);// 给图片控件设置上对应的位置编号iv.setTag(position);if (!isInit) {iv.setImageResource(R.drawable.update_log);}return v;}Overridepublic long getItemId(int position) {// TODO Auto-generated method stubreturn 0;}Overridepublic Object getItem(int position) {// TODO Auto-generated method stubreturn null;}Overridepublic int getCount() {// TODO Auto-generated method stubreturn 140;}};private void initList() {// TODO Auto-generated method stublist (ListView) this.findViewById(R.id.list);list.setAdapter(adapter);list.setOnScrollListener(new OnScrollListener() {Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) {// TODO Auto-generated method stubisInit true;switch (scrollState) {case OnScrollListener.SCROLL_STATE_IDLE:// 滑动停止for (; start_index end_index; start_index) {ImageView img (ImageView) list.findViewWithTag(start_index);img.setImageResource(R.drawable.update_log);}break;default:break;}}Overridepublic void onScroll(AbsListView view, int firstVisibleItem,int visibleItemCount, int totalItemCount) {// TODO Auto-generated method stub// 设置当前屏幕显示的起始index和结束indexstart_index firstVisibleItem;end_index firstVisibleItem visibleItemCount;}});}
}