Android图片加载缓存框架 Android图片加载缓存框架Glide
BetterLaterThanNever 人气:0想了解Android图片加载缓存框架Glide的相关内容吗,BetterLaterThanNever在本文为您仔细讲解Android图片加载缓存框架的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Android图片加载,Android图片加载缓存,图片加载缓存框架Glide,下面大家一起来学习吧。
Glide开源框架是Google推荐的图片加载和缓框架,其在Github上的开源地址是:https://github.com/bumptech/glide
当然一个Google推荐的框架肯定就是Volley啦。
目前Android主流开发工具是AndroidStudio,在AndroidStudio如何使用Glide,https://github.com/bumptech/glide上有详细的介绍说明。
因为刚换新工作不久,公司和的还是Eclipse,所以学习Glide我暂时还用的Eclipse开发工具。
步骤:
添加glide.jar包到项目中,jar包可以在网上下载。
编写代码
public class MainActivity extends Activity { private ImageView glide_iv; private ListView glide_lv; private static final String URL ="这里写图片url"; private List<String> urls = new ArrayList<String>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initDatas(); glide_iv = (ImageView) findViewById(R.id.glide_iv); // 通过下面这句代码把网络图片加载到ImageView中,非常方便 //Glide的with方法不仅接受Context,还接受Activity 和 Fragment等,Context会自动的从他们获取,使用很方便 Glide.with(this).load(URL).into(glide_iv); glide_lv = (ListView) findViewById(R.id.glide_lv); glide_lv.setAdapter(new BaseAdapter() { @Override public View getView(int arg0, View contentView, ViewGroup arg2) { ViewHolder holder=null; if (contentView == null) { holder=new ViewHolder(); contentView= LayoutInflater.from( MainActivity.this).inflate(R.layout.my_image_view, null); holder.itemIv = contentView.findViewById(R.id.item_iv); contentView.setTag(holder); } else { holder=(ViewHolder) contentView.getTag(); } String url = urls.get(arg0); //在ListView中加载列表图片 Glide.with(MainActivity.this).load(url).centerCrop() .placeholder(R.drawable.ic_launcher).crossFade() .into(holder.itemIv); return contentView; } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return arg0; } @Override public Object getItem(int arg0) { // TODO Auto-generated method stub return urls.get(arg0); } @Override public int getCount() { // TODO Auto-generated method stub return urls.size(); } class ViewHolder{ ImageView itemIv; } }); } /** * 添加数据 */ private void initDatas() { for (int i = 0; i < 5; i++) { urls.add(URL); } } }
布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="20dp" > <ImageView android:id="@+id/glide_iv" android:layout_width="80dp" android:layout_height="80dp" /> <ListView android:id="@+id/glide_lv" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/glide_iv"> </ListView> </RelativeLayout>
最后记得在AndroidManifest.xml中添加网络权限:
<uses-permission android:name="android.permission.INTERNET" >
以上就是本文的全部内容,希望对大家的学习有所帮助。
加载全部内容