最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

實(shí)現(xiàn)LoaderCallbacks接口動(dòng)態(tài)循環(huán)加載網(wǎng)上圖片并展示在手機(jī)屏幕上

標(biāo)簽:
Android

5bbaf20b00012c6903200462.jpg


1.布局xml文件

activity_main.xml

<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:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context=".MainActivity" >


    <Button

        android:id="@+id/btn"

        android:onClick="download"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="点击循环加载网上图片" />

    <ImageView 

        android:id="@+id/iv"

        android:layout_below="@id/btn"

        android:layout_height="match_parent"

        android:layout_width="match_parent"

        />


</RelativeLayout>

2.优化工具类ImageCach.java

package com.example.day15_ex_loadimage;

import java.util.HashMap;

import android.graphics.Bitmap;

/**

 * 图片下载存储优化工具类

 * @author Administrator

 *

 */

public class ImageCach {

    //存储url 和  图片解析流 Bitmap对象

public static HashMap<String,Bitmap>map=new HashMap<String, Bitmap>();

    //获取Bitmap对象

public static Bitmap getBitmap(String urlPath){

     return ImageCach.map.get(urlPath);

    }

//存放url Bitmap

public void put(String urlPath,Bitmap bm){

ImageCach.map.put(urlPath, bm);

}

    

}

3.联网获取图片类 HttpUtils.java

package com.example.day15_ex_loadimage;

import java.io.InputStream;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.util.Log;

public class HttpUtils {

    public static Bitmap getBitmap(String urlPath){

     Bitmap bm=null;

     bm=ImageCach.getBitmap(urlPath);//优化  防止重复下载

     if(bm==null){

     try {

URL url=new URL(urlPath);

HttpURLConnection conn=(HttpURLConnection) url.openConnection();

InputStream in=conn.getInputStream();

bm=BitmapFactory.decodeStream(in);

    ImageCach.map.put(urlPath, bm);

    Log.e("img","img");

    in.close();

    conn.disconnect();

     } catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

     }

     return bm;

    }

}

4.实现类 MainActivity.java

package com.example.day15_ex_loadimage;

import android.os.Bundle;

import android.annotation.SuppressLint;

import android.app.Activity;

import android.app.LoaderManager;

import android.app.LoaderManager.LoaderCallbacks;

import android.content.AsyncTaskLoader;

import android.content.Context;

import android.content.Loader;

import android.graphics.Bitmap;

import android.view.Menu;

import android.view.View;

import android.widget.ImageView;

@SuppressLint("NewApi")

public class MainActivity extends Activity implements LoaderCallbacks<Bitmap>{

    static int i=0;//控制图片url路径

    ImageView iv;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

        //初始化控件

iv=(ImageView) findViewById(R.id.iv);

}

 

public void download(View view){

LoaderManager loader=getLoaderManager();

loader.restartLoader(0,null,this);

}

@Override

public Loader<Bitmap> onCreateLoader(int id, Bundle args) {

MyLoader loader=new MyLoader(this);//创建loader对象

return loader;

}

@Override

public void onLoadFinished(Loader<Bitmap> arg0, Bitmap arg1) {

        iv.setImageBitmap(arg1);//设置图片在ImageView中显示

}

@Override

public void onLoaderReset(Loader<Bitmap> arg0) {

// TODO Auto-generated method stub

}

    private static class MyLoader extends AsyncTaskLoader<Bitmap>{

    

public MyLoader(Context context) {

super(context);

// TODO Auto-generated constructor stub

}

@Override

public Bitmap loadInBackground() {

    //只能加载4张图片 1-4.jpg

Bitmap bm=HttpUtils.getBitmap("http://www.ytmfdw.com/image/img"+(++i%4+1)+".jpg");

return bm;

}

@Override

protected void onStartLoading() {

// TODO Auto-generated method stub

super.onStartLoading();

    forceLoad();

}

    

    }

}

原文链接:http://www.apkbus.com/blog-813041-61198.html

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消