Android圖片加載緩存框架Glide
Glide開源框架是Google推薦的圖片加載和緩框架,其在Github上的開源地址是:https://github.com/bumptech/glide
當(dāng)然一個(gè)Google推薦的框架肯定就是Volley啦。
目前Android主流開發(fā)工具是AndroidStudio,在AndroidStudio如何使用Glide,https://github.com/bumptech/glide上有詳細(xì)的介紹說(shuō)明。
因?yàn)閯倱Q新工作不久,公司和的還是Eclipse,所以學(xué)習(xí)Glide我暫時(shí)還用的Eclipse開發(fā)工具。
步驟:
添加glide.jar包到項(xiàng)目中,jar包可以在網(wǎng)上下載。
編寫代碼
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); // 通過(guò)下面這句代碼把網(wǎng)絡(luò)圖片加載到ImageView中,非常方便 //Glide的with方法不僅接受Context,還接受Activity 和 Fragment等,Context會(huì)自動(dòng)的從他們獲取,使用很方便 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; } }); } /** * 添加數(shù)據(jù) */ 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中添加網(wǎng)絡(luò)權(quán)限:
<uses-permission android:name="android.permission.INTERNET" >
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
相關(guān)文章
使用flutter的showModalBottomSheet遇到的坑及解決
這篇文章主要介紹了使用flutter的showModalBottomSheet遇到的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09Android編程開發(fā)實(shí)現(xiàn)多線程斷點(diǎn)續(xù)傳下載器實(shí)例
這篇文章主要介紹了Android編程開發(fā)實(shí)現(xiàn)多線程斷點(diǎn)續(xù)傳下載器,涉及Android多線程,文件傳輸及斷點(diǎn)續(xù)傳的相關(guān)技巧,需要的朋友可以參考下2016-01-01adnroid已安裝應(yīng)用中檢測(cè)某應(yīng)用是否安裝的代碼實(shí)例
這篇文章主要介紹了Android怎么檢測(cè)一個(gè)應(yīng)用是否安裝的方法,大家參考使用吧2013-11-11Android雙擊返回鍵退出程序的實(shí)現(xiàn)方法
這篇文章主要介紹了Android雙擊返回鍵退出程序的實(shí)現(xiàn)方法,是Android程序開發(fā)中非常具有實(shí)用價(jià)值的重要技巧,需要的朋友可以參考下2014-09-09Android自定義軟鍵盤的設(shè)計(jì)與實(shí)現(xiàn)代碼
本篇文章主要介紹了 Android自定義軟鍵盤的設(shè)計(jì)與實(shí)現(xiàn)代碼,有需要的可以了解一下。2016-11-11安卓(Android) 監(jiān)聽按鍵長(zhǎng)按事件
本文主要介紹Android 中監(jiān)聽按鍵的長(zhǎng)按事件,對(duì)按鍵機(jī)制進(jìn)行詳解,并附有代碼實(shí)例,具有參考價(jià)值,希望能幫到有需要的小伙伴2016-07-07Android實(shí)現(xiàn)滑塊拼圖驗(yàn)證碼功能
這篇文章主要介紹了Android實(shí)現(xiàn)滑塊拼圖驗(yàn)證碼功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Android自定義view實(shí)現(xiàn)日歷打卡簽到
這篇文章主要為大家詳細(xì)介紹了Android自定義view實(shí)現(xiàn)日歷打卡簽到,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05Android 實(shí)現(xiàn)微信,微博,微信朋友圈,QQ分享的功能
這篇文章主要介紹了Android 實(shí)現(xiàn)微信,微博,微信朋友圈,QQ分享的功能的相關(guān)資料,需要的朋友可以參考下2016-12-12