1.appliction代码
在清单文件中加入name
package bwhttp.com.day2.myapp;
import android.content.Context;
import android.os.Environment;
import android.util.Log;
import com.nostra13.universalimageloader.cache.disc.impl.UnlimitedDiskCache;
import com.nostra13.universalimageloader.cache.disc.naming.HashCodeFileNameGenerator;
import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
import com.nostra13.universalimageloader.core.assist.QueueProcessingType;
import com.nostra13.universalimageloader.core.decode. ImageDecoder;
import com.nostra13.universalimageloader.core.download. ImageDownloader;
import java.io.File;
public class Application extends android.app.Application {
@Override
public void onCreate() {
super.onCreate();
//初始化ImageLoader
// ImageLoaderConfiguration 配置Imageloader
ImageLoaderConfiguration build = new ImageLoaderConfiguration.Builder(this)
.diskCacheExtraOptions(480, 800, null) // 本地缓存的详细信息(缓存的最大长宽),最好不要设置这个
.threadPoolSize(3) // default 线程池内加载的数量
.threadPriority(Thread.NORM_PRIORITY - 2) // default 设置当前线程的优先级
.tasksProcessingOrder(QueueProcessingType.FIFO) // default
.denyCacheImageMultipleSizesInMemory()
.memoryCache(new LruMemoryCache(2 * 1024 * 1024)) //可以通过自己的内存缓存实现
.memoryCacheSize(2 * 1024 * 1024) // 内存缓存的最大值
.memoryCacheSizePercentage(13) // default
.diskCacheSize(50 * 1024 * 1024) // 50 Mb sd卡(本地)缓存的最大值
.diskCacheFileCount(100) // 可以缓存的文件数量
.diskCacheFileNameGenerator(new HashCodeFileNameGenerator())
//.diskCache(new UnlimitedDiskCache(file))//UnlimitedDiskCache 限制这个图片的缓存路径
// .imageDownloader(new ImageDownloader(context)) // default
//.imageDecoder(new ImageDecoder(true)) // default
//.defaultDisplayImageOptions(DisplayImageOptions.createSimple()) // default
//.discCache(new LimitedAgeDiscCache(cacheDir, 7 * 24 * 60 * 60))// 自定义缓存路径,7天后自动清除缓存
.writeDebugLogs() // 打印debug lo
.build();
ImageLoader.getInstance().init(build);//全局初始化此配置
}
}
2.s适配器中代码
public class MyAdapte extends Adapter {
private LayoutInflater mInflater;
Context context;
List<FocusBean.ResultBean.DataBean> list;
private TextView textView;
private DisplayImageOptions Options;
//构造方法
public MyAdapte(Context context, List<FocusBean.ResultBean.DataBean> resultBean) {
this.context=context;
this.list=resultBean;
mInflater = LayoutInflater.from(context);
}
//统计总条目数量
@Override
public int getCount() {
return list.size();
}
//当前显示的条目
@Override
public getItem(int position) {
return list.get(position);
}
//获取当前条目id
@Override
public long getItemId(int position) {
return position;
}
//加载视图
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
//加载布局
convertView = mInflater.inflate(R.layout.item_listview, parent, false);
holder= new ViewHolder();
holder.textView1 = convertView.findViewById(R.id.textView1);
holder.textView2 = convertView.findViewById(R.id.textView2);
holder.textView3 = convertView.findViewById(R.id.textView3);
ImageView imageView = holder.imageView = convertView.findViewById(R.id.imageView);
convertView.setTag(holder);
} else { //else里面说明,convertView已经被复用了,说明convertView中已经设置过tag了,即holder
holder = (ViewHolder) convertView.getTag();
}
holder.textView1.setText(list.get(position).getAuthor_name());
holder.textView2.setText(list.get(position).get ());
holder.textView3.setText(list.get(position).getDate());
//图片异步加载使用Imageloader
Options = new DisplayImageOptions.Builder()
.showStubImage(R.mipmap.bw_er)//缓冲过程中图片
.showImageForEmptyUri(R.mipmap.bw_empty)// 设置图片Uri为空或是错误的时候显示的图片
.showImageOnFail(R.mipmap.bw_wf)// 设置图片加载或解码过程中发生错误显示的图片
.cacheInMemory(true)//缓存道内存
.cacheOnDisc(true)//缓存到硬盘
.bitmapConfig(Bitmap.Config.ARGB_8888) //设置图片的解码类型
.disp (new RoundedBitmapDisp (30,10))//圆角
.disp (new CircleBitmapDisp (Color.RED, 10))//圆形
.build()
;
ImageLoader.getInstance().displayImage(list.get(position).getThumbnail_pic_s(),holder.imageView,Options);
// ImageLoader.getInstance().displayImage(list.get(position).getThumbnail_pic_s(),holder.imageView);
return convertView;
}
private class ViewHolder {
TextView textView1,textView2,textView3;
ImageView imageView;
}
}
继续阅读与本文标签相同的文章
上一篇 :
Django详解之视图
-
Java 13 明天发布,最新最全新特性解读
2026-05-18栏目: 教程
-
如何使用phpMyAdmin导出Joomla数据库
2026-05-18栏目: 教程
-
POLARDB MySQL 8.0 正式上线商用
2026-05-18栏目: 教程
-
MySQL 推出 90核 CPU 720GB 内存 独占物理机规格
2026-05-18栏目: 教程
-
基于 RocketMQ 的同城双活架构在美菜网的挑战与实践
2026-05-18栏目: 教程
