1 public class MainActivity extends Activity {
2
3 public String[] urls = new String[] {
4 "image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic3.nipic.com%2F20090515%2F1514804_091435007_2.jpg",
5 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic15.nipic.com%2F20110718%2F7954788_221153772141_2.jpg",
6 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpica.nipic.com%2F2007-12-06%2F2007126205543511_2.jpg",
7 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Ff12.topit.me%2Fo129%2F10129120625790e866.jpg",
8 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpica.nipic.com%2F2007-11-11%2F20071111143725266_2.jpg",
9 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic7.nipic.com%2F20100506%2F4876019_150816079897_2.jpg",
10 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic11.nipic.com%2F20101123%2F3320946_195231983035_2.jpg",
11 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fattach.bbs.miui.com%2Fforum%2Fmonth_1011%2F1011250123c614b43b52ccec6b.jpg",
12 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic9.nipic.com%2F20100828%2F2531170_134726497520_2.jpg",
13 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic14.nipic.com%2F20110609%2F4526587_092030409110_2.jpg",
14 "http://image.baidu.com/i?tn=download&ipn=dwnl&word=%E9%AB%98%E6%B8%85&ie=utf-8&fr=result&url=http%3A%2F%2Fpic4.nipic.com%2F20091112%2F3137436_124935065257_2.jpg",
15 "//img-my.csdn.net/uploads/201309/01/1378037235_3453.jpg", "//img-my.csdn.net/uploads/201309/01/1378037235_7476.jpg",
16 "//img-my.csdn.net/uploads/201309/01/1378037235_9280.jpg", "//img-my.csdn.net/uploads/201309/01/1378037234_3539.jpg",
17 "//img-my.csdn.net/uploads/201309/01/1378037234_6318.jpg", "//img-my.csdn.net/uploads/201309/01/1378037194_2965.jpg",
18 "//img-my.csdn.net/uploads/201309/01/1378037193_1687.jpg", "//img-my.csdn.net/uploads/201309/01/1378037193_1286.jpg",
19 "//img-my.csdn.net/uploads/201309/01/1378037192_8379.jpg", "//img-my.csdn.net/uploads/201309/01/1378037178_9374.jpg",
20 "//img-my.csdn.net/uploads/201309/01/1378037177_1254.jpg", "//img-my.csdn.net/uploads/201309/01/1378037177_6203.jpg",
21 "//img-my.csdn.net/uploads/201309/01/1378037152_6352.jpg", "//img-my.csdn.net/uploads/201309/01/1378037151_9565.jpg",
22 "//img-my.csdn.net/uploads/201309/01/1378037151_7904.jpg", "//img-my.csdn.net/uploads/201309/01/1378037148_7104.jpg",
23 "//img-my.csdn.net/uploads/201309/01/1378037129_8825.jpg", "//img-my.csdn.net/uploads/201309/01/1378037128_5291.jpg",
24 "//img-my.csdn.net/uploads/201309/01/1378037128_3531.jpg", "//img-my.csdn.net/uploads/201309/01/1378037127_1085.jpg",
25 "//img-my.csdn.net/uploads/201309/01/1378037095_7515.jpg", "//img-my.csdn.net/uploads/201309/01/1378037094_8001.jpg",
26 "//img-my.csdn.net/uploads/201309/01/1378037093_7168.jpg", "//img-my.csdn.net/uploads/201309/01/1378037091_4950.jpg",
27 "//img-my.csdn.net/uploads/201308/31/1377949643_6410.jpg", "//img-my.csdn.net/uploads/201308/31/1377949642_6939.jpg",
28 "//img-my.csdn.net/uploads/201308/31/1377949630_4505.jpg", "//img-my.csdn.net/uploads/201308/31/1377949630_4593.jpg",
29 "//img-my.csdn.net/uploads/201308/31/1377949629_7309.jpg", "//img-my.csdn.net/uploads/201308/31/1377949629_8247.jpg",
30 "//img-my.csdn.net/uploads/201308/31/1377949615_1986.jpg", "//img-my.csdn.net/uploads/201308/31/1377949614_8482.jpg",
31 "//img-my.csdn.net/uploads/201308/31/1377949614_3743.jpg", "//img-my.csdn.net/uploads/201308/31/1377949614_4199.jpg",
32 "//img-my.csdn.net/uploads/201308/31/1377949599_3416.jpg", "//img-my.csdn.net/uploads/201308/31/1377949599_5269.jpg",
33 "//img-my.csdn.net/uploads/201308/31/1377949598_7858.jpg", "//img-my.csdn.net/uploads/201308/31/1377949598_9982.jpg",
34 "//img-my.csdn.net/uploads/201308/31/1377949578_2770.jpg", "//img-my.csdn.net/uploads/201308/31/1377949578_8744.jpg",
35 "//img-my.csdn.net/uploads/201308/31/1377949577_5210.jpg", "//img-my.csdn.net/uploads/201308/31/1377949577_1998.jpg",
36 "//img-my.csdn.net/uploads/201308/31/1377949482_8813.jpg", "//img-my.csdn.net/uploads/201308/31/1377949481_6577.jpg",
37 "//img-my.csdn.net/uploads/201308/31/1377949480_4490.jpg", "//img-my.csdn.net/uploads/201308/31/1377949455_6792.jpg",
38 "//img-my.csdn.net/uploads/201308/31/1377949455_6345.jpg", "//img-my.csdn.net/uploads/201308/31/1377949442_4553.jpg",
39 "//img-my.csdn.net/uploads/201308/31/1377949441_8987.jpg", "//img-my.csdn.net/uploads/201308/31/1377949441_5454.jpg",
40 "//img-my.csdn.net/uploads/201308/31/1377949454_6367.jpg", "//img-my.csdn.net/uploads/201308/31/1377949442_4562.jpg",
41 "//img-my.csdn.net/uploads/201309/01/1378037235_3453.jpg", "//img-my.csdn.net/uploads/201309/01/1378037235_7476.jpg",
42 "//img-my.csdn.net/uploads/201309/01/1378037235_9280.jpg", "//img-my.csdn.net/uploads/201309/01/1378037234_3539.jpg",
43 "//img-my.csdn.net/uploads/201309/01/1378037234_6318.jpg", "//img-my.csdn.net/uploads/201309/01/1378037194_2965.jpg",
44 "//img-my.csdn.net/uploads/201309/01/1378037193_1687.jpg", "//img-my.csdn.net/uploads/201309/01/1378037193_1286.jpg",
45 "//img-my.csdn.net/uploads/201309/01/1378037192_8379.jpg", "//img-my.csdn.net/uploads/201309/01/1378037178_9374.jpg",
46 "//img-my.csdn.net/uploads/201309/01/1378037177_1254.jpg", "//img-my.csdn.net/uploads/201309/01/1378037177_6203.jpg",
47 "//img-my.csdn.net/uploads/201309/01/1378037152_6352.jpg", "//img-my.csdn.net/uploads/201309/01/1378037151_9565.jpg",
48 "//img-my.csdn.net/uploads/201309/01/1378037151_7904.jpg", "//img-my.csdn.net/uploads/201309/01/1378037148_7104.jpg",
49 "//img-my.csdn.net/uploads/201309/01/1378037129_8825.jpg", "//img-my.csdn.net/uploads/201309/01/1378037128_5291.jpg",
50 "//img-my.csdn.net/uploads/201309/01/1378037128_3531.jpg", "//img-my.csdn.net/uploads/201309/01/1378037127_1085.jpg",
51 "//img-my.csdn.net/uploads/201309/01/1378037095_7515.jpg", "//img-my.csdn.net/uploads/201309/01/1378037094_8001.jpg",
52 "//img-my.csdn.net/uploads/201309/01/1378037093_7168.jpg", "//img-my.csdn.net/uploads/201309/01/1378037091_4950.jpg",
53 "//img-my.csdn.net/uploads/201308/31/1377949643_6410.jpg", "//img-my.csdn.net/uploads/201308/31/1377949642_6939.jpg",
54 "//img-my.csdn.net/uploads/201308/31/1377949630_4505.jpg", "//img-my.csdn.net/uploads/201308/31/1377949630_4593.jpg",
55 "//img-my.csdn.net/uploads/201308/31/1377949629_7309.jpg", "//img-my.csdn.net/uploads/201308/31/1377949629_8247.jpg",
56 "//img-my.csdn.net/uploads/201308/31/1377949615_1986.jpg", "//img-my.csdn.net/uploads/201308/31/1377949614_8482.jpg",
57 "//img-my.csdn.net/uploads/201308/31/1377949614_3743.jpg", "//img-my.csdn.net/uploads/201308/31/1377949614_4199.jpg",
58 "//img-my.csdn.net/uploads/201308/31/1377949599_3416.jpg", "//img-my.csdn.net/uploads/201308/31/1377949599_5269.jpg",
59 "//img-my.csdn.net/uploads/201308/31/1377949598_7858.jpg", "//img-my.csdn.net/uploads/201308/31/1377949598_9982.jpg",
60 "//img-my.csdn.net/uploads/201308/31/1377949578_2770.jpg", };
61
62 private static final String IMG_PATH1 = "https://www.baidu.com/img/bdlogo.png";
63 private static final String IMG_PATH2 = "http://gb.cri.cn/mmsource/images/2015/04/07/034b3e7349da4b3b899014047577fb6b.jpg";
64
65 private ListView mLv;
66 private BitmapUtils mBitmapUtils;
67 private BitmapDisplayConfig mConfig;
68 private LayoutInflater mInflater;
69
70 @Override
71 protected void onCreate(Bundle savedInstanceState) {
72 super.onCreate(savedInstanceState);
73 setContentView(R.layout.activity_main);
74
75 mInflater = LayoutInflater.from(this);
76
77 mBitmapUtils = new BitmapUtils(this);
78 // diskCachePath : 设置图片缓存sdcard的路径
79 // memoryCachePercent :设置图片内存缓冲占整个应用程序可用内存的百分比
80 // diskCacheSize : 设置sdcard缓存的总大小
81 // mBitmapUtils = new BitmapUtils(context, diskCachePath,
82 // memoryCachePercent, diskCacheSize)
83
84 mConfig = new BitmapDisplayConfig();
85
86 AnimationSet set = new AnimationSet(true);
87 AlphaAnimation alpha = new AlphaAnimation(0.3f, 1);
88 ScaleAnimation scale = new ScaleAnimation(0.7f, 1f, 0.7f, 1f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
89 set.addAnimation(alpha);
90 set.addAnimation(scale);
91 set.setDuration(350);
92
93 // 设置BitmapUtils的全局设置
94 // mBitmapUtils.configDefaultLoadFailedImage(drawable)
95 // mBitmapUtils.configDefaultLoadingImage(drawable);
96
97 // 设置 图片显示在界面上的时候播放一个动画
98 mConfig.setAnimation(set);
99 // 设置加载失败的时候显示的图片
100 mConfig.setLoadFailedDrawable(getResources().getDrawable(R.drawable.fail));
101 // 设置加载中的时候显示的图片
102 mConfig.setLoadingDrawable(getResources().getDrawable(R.drawable.loading));
103 // 设置图片的分辨率
104 BitmapSize size = new BitmapSize(110, 110);
105 mConfig.setBitmapMaxSize(size);
106
107 mLv = (ListView) findViewById(R.id.lv);
108 mLv.setAdapter(new BaseAdapter() {
109
110 @Override
111 public View getView(int position, View convertView, ViewGroup parent) {
112
113 View view = convertView;
114
115 if (view == null) {
116 view = mInflater.inflate(R.layout.item, null);
117 }
118
119 ImageView ico = (ImageView) view.findViewById(R.id.ico);
120 TextView title = (TextView) view.findViewById(R.id.title);
121
122 // mBitmapUtils.display(ico, getItem(position), mConfig);
123
124 mBitmapUtils.display(ico, getItem(position), mConfig, new BitmapLoadCallBack<ImageView>() {
125
126 @Override
127 public void onLoadCompleted(ImageView arg0, String arg1, Bitmap arg2, BitmapDisplayConfig arg3, BitmapLoadFrom arg4) {
128 // 若设置了BitmapLoadCallBack的
129 // 回调,那么在onLoadCompleted方法中必须要手动的给ImageView设置图片背景
130 arg0.setImageBitmap(arg2);
131 }
132
133 @Override
134 public void onLoadFailed(ImageView arg0, String arg1, Drawable arg2) {
135 arg0.setImageDrawable(arg2);
136 }
137 });
138 title.setText("-----position------" + position);
139
140 return view;
141 }
142
143 @Override
144 public long getItemId(int position) {
145 return position;
146 }
147
148 @Override
149 public String getItem(int position) {
150 return urls[position];
151 }
152
153 @Override
154 public int getCount() {
155 return urls.length;
156 }
157 });
158 }
159 }