程序里我用了AsyncTask去加载图片,我在未用AsyncTask异步任务的时候图片和名称都是一一对应的,只不过加载非常慢。
现在用了异步任务后,速度是变快了但是图片和名字却未能和名字正确的对应了。
比如:以前 TextView的值为:CCTV-1 ImageView的值为:CCTV-1对应的那张图片。 而用了异步任务后TextView的值还是CCTV-1 但是图片却变成 湖南卫视或其他的台标了。甚至有些图片还加载不出来
请各位大神指教一下。代码如下:
//加载图片的异步程序
private class DownloadDrawableTask extends AsyncTask<String, Integer, Object>{
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
} @Override
protected Object doInBackground(String... params) {
BitmapDrawable mBitmapDrawable = new BitmapDrawable(Tools.loadImage(params[0]));
return mBitmapDrawable;
} @Override
protected void onPostExecute(Object result) {
if (cctvCode.containsKey(channelCode)) {
imageView.setBackgroundDrawable(context.getResources().getDrawable((cctvCode.get(channelCode))));
}
else {
imageView.setBackgroundDrawable((BitmapDrawable)result);
}
if(imageUrl == null) {
imageView.setImageResource(R.drawable.logo_blank);
}
}
}
现在用了异步任务后,速度是变快了但是图片和名字却未能和名字正确的对应了。
比如:以前 TextView的值为:CCTV-1 ImageView的值为:CCTV-1对应的那张图片。 而用了异步任务后TextView的值还是CCTV-1 但是图片却变成 湖南卫视或其他的台标了。甚至有些图片还加载不出来
请各位大神指教一下。代码如下:
//加载图片的异步程序
private class DownloadDrawableTask extends AsyncTask<String, Integer, Object>{
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
} @Override
protected Object doInBackground(String... params) {
BitmapDrawable mBitmapDrawable = new BitmapDrawable(Tools.loadImage(params[0]));
return mBitmapDrawable;
} @Override
protected void onPostExecute(Object result) {
if (cctvCode.containsKey(channelCode)) {
imageView.setBackgroundDrawable(context.getResources().getDrawable((cctvCode.get(channelCode))));
}
else {
imageView.setBackgroundDrawable((BitmapDrawable)result);
}
if(imageUrl == null) {
imageView.setImageResource(R.drawable.logo_blank);
}
}
}
解决方案 »
- android4.0下, 设置--> 显示--> 屏幕适配中, 想实现以下效果, 应如何实现?
- 关于android智能电视
- alertDialog.build的setMultiChoiceItems方法如何得到多选的值
- NDK关于.so文件的生成!!!
- android访问网络的问题 。
- Android入门到深入阶段学习推荐书籍
- android4.0后不能在住线程中使用网络连接。于是我新开了一个线程,可是还是有错误。求教
- TabActivity跳转同一Avtivity不刷新
- 【求教】移动搜索技术
- intent.putExtra参数问题
- 安卓手机现在可以完全用c++开发了吗,大家都用啥工具,推荐下
- 加密的数据怎么查询啊
修改:在getView()方法中对viewHolder中的每一个控件都进行初始化,保证调用getView()方法时,viewHolder中的数据不会是上一次缓存中的数据