用ImageView展示数据,并使用handler每过3秒钟切换一张图片

添加的依赖:

implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'

------------------- MainActivity --------------------

package com.example.image;

import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;

import com.nostra13.universalimageloader.core.ImageLoader;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

    private List<String> imgs;
    int time=3;
    private ImageView image;
    Handler handler=new Handler(){
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);

            ImageLoader.getInstance().displayImage(imgs.get(time%imgs.size()),image);
            time++;
            sendEmptyMessageDelayed(1,3000);
        }
    };


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

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


        imgs = new ArrayList<>();
        imgs.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1508910683617&di=73f055f2e18ad010b60f29bda13ca3a8&imgtype=0&src=http%3A%2F%2Fimgsrc.baidu.com%2Fimage%2Fc0%253Dshijue1%252C0%252C0%252C294%252C40%2Fsign%3Da8e6763e61600c33e474d68b72253b7a%2F8644ebf81a4c510f1a7c57306a59252dd42aa564.jpg");
        imgs.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1508910757462&di=9e24a3cd1f6d00b3c373690b8b3ceb4e&imgtype=0&src=http%3A%2F%2Fpic.qiantucdn.com%2F58pic%2F19%2F75%2F71%2F571227cc578f2_1024.jpg");
        imgs.add("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1508910757460&di=461ac91bd572b862fff5c13a50b90f95&imgtype=0&src=http%3A%2F%2Fimgsrc.baidu.com%2Fimgad%2Fpic%2Fitem%2F5d6034a85edf8db1074e8e5d0223dd54564e74a3.jpg");

        handler.sendEmptyMessageDelayed(1,1000);
    }
}

 -------------------- MyApp -----------------------

package com.example.image;

import android.app.Application;
import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;
import com.nostra13.universalimageloader.cache.memory.impl.LruMemoryCache;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;

/**
 * Created by Earl on 2017/10/26.
 */
public class Myapp extends Application {
    public void onCreate() {
        super.onCreate();
        ImageLoaderConfiguration configuration = new ImageLoaderConfiguration.Builder(this).
                memoryCache(new LruMemoryCache(2 * 1024 * 1024))//设置内存缓存区大小
                .memoryCacheSize(2 * 1024 * 1024)//设置缓存区大小
                .memoryCacheExtraOptions(320, 320)//缓存图片最大的宽度与高度 px
                .diskCacheSize(50 * 1024 * 1024)//设置sd卡缓存的空间大小 
                .diskCacheFileNameGenerator(new Md5FileNameGenerator())//sd卡缓存图片的命名 使用md5加密方式
                .diskCacheFileCount(100)//缓存文件的最大数量
                .writeDebugLogs()//写入日志
                .build(); //对imageLoader进行初使化 ImageLoader.getInstance().init(configuration); 

    }
} 

 ---------------------- activity_main.xml ----------------------

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.image.MainActivity">

    <ImageView
        android:id="@+id/iv"
        android:layout_width="match_parent"
        android:layout_height="150dp" />

</android.support.constraint.ConstraintLayout> 

   ---------------------------- AndroidManifest.xml -------------------------

 <?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
        package="com.example.image"> 
        
        <uses-permission android:name="android.permission.INTERNET"/>
        
        <application android:name=".Myapp" 
            android:allowBackup="true" 
            android:icon="@mipmap/ic_launcher" 
            android:label="@string/app_name" 
            android:roundIcon="@mipmap/ic_launcher_round" 
            android:supportsRtl="true" 
            android:theme="@style/AppTheme"> 
            <activity android:name=".MainActivity"> 
                <intent-filter> 
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" /> 
                </intent-filter> 
            </activity>
        </application>
    </manifest>

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

窗台的花花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值