首页

Android ViewPager和ImageLoader配合使用

java

2020-7-30

package com.tc.photodemo;

import java.util.ArrayList;

import android.app.Activity;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;

import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.assist.FailReason;
import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;
import com.nostra13.universalimageloader.core.listener.ImageLoadingListener;
import com.tc.photodemo.adapter.Mypager;

public class PhotoActivity extends Activity {
	ArrayList<String> photoUri = null;
	TextView title;
	ProgressBar progressBar1;
	ViewPager viewpager;
	Mypager adapter;
	ImageLoader loader;
	DisplayImageOptions options;
	ArrayList<View> view = new ArrayList<View>();
	Context context = null;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.fragment_main);
		photoUri = new ArrayList<>();
		photoUri.add("http://img0.bdstatic.com/img/image/2043d07892fc42f2350bebb36c4b72ce1409212020.jpg");
		photoUri.add("http://a.hiphotos.baidu.com/image/w%3D230/sign=e2d6e66ba50f4bfb8cd09957334d788f/1e30e924b899a9012cdcd2c21c950a7b0308f55d.jpg");
		photoUri.add("http://c.hiphotos.baidu.com/image/w%3D230/sign=ce9f962e38292df597c3ab168c305ce2/71cf3bc79f3df8dc8b71dc90cf11728b47102866.jpg");
		photoUri.add("http://img0.bdstatic.com/img/image/shouye/mingxing0408.jpg");
		loader = ImageLoader.getInstance();
		options = new DisplayImageOptions.Builder()
				.showImageForEmptyUri(R.drawable.ic_launcher)
				.showImageOnFail(R.drawable.ic_launcher).cacheInMemory(true)
				.cacheOnDisc(true).displayer(new RoundedBitmapDisplayer(0))
				.build();
		init();
		viewpagerListener();
	}

	private void viewpagerListener() {
		// TODO Auto-generated method stub
		viewpager.setOnPageChangeListener(new OnPageChangeListener() {

			@Override
			public void onPageSelected(int arg0) {
				// TODO Auto-generated method stub
				title.setText((arg0   1)   "/"   view.size());
			}

			@Override
			public void onPageScrolled(int arg0, float arg1, int arg2) {
				// TODO Auto-generated method stub

			}

			@Override
			public void onPageScrollStateChanged(int arg0) {
				// TODO Auto-generated method stub

			}
		});
	}

	private void init() {
		// TODO Auto-generated method stub
		context = this;
		title = (TextView) findViewById(R.id.textView1);
		progressBar1 = (ProgressBar) findViewById(R.id.progressBar1);
		viewpager = (ViewPager) findViewById(R.id.viewpager);
		adapter = new Mypager();
		viewpager.setAdapter(adapter);
		

		for (int i = 0; i < photoUri.size(); i  ) {
			ImageView im = new ImageView(context);
			im.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
					LayoutParams.WRAP_CONTENT));
			view.add(im);
			loader.displayImage(photoUri.get(i), im,
					new ImageLoadingListener() {

						@Override
						public void onLoadingStarted(String arg0, View arg1) {
							// TODO Auto-generated method stub
							progressBar1.setVisibility(View.VISIBLE);
						}

						@Override
						public void onLoadingFailed(String arg0, View arg1,
								FailReason arg2) {
							// TODO Auto-generated method stub
							progressBar1.setVisibility(View.GONE);
						}

						@Override
						public void onLoadingComplete(String arg0, View arg1,
								Bitmap arg2) {
							// TODO Auto-generated method stub
							progressBar1.setVisibility(View.GONE);
						}

						@Override
						public void onLoadingCancelled(String arg0, View arg1) {
							// TODO Auto-generated method stub
							progressBar1.setVisibility(View.GONE);
						}
					});
		}
		//更新adapter中的数据
		adapter.changData(view);
		title.setText(1   "/"   view.size());
		viewpager.setCurrentItem(0);

	}
}
资源下载此资源下载价格为3D币(VIP免费),请先
资源文件列表
PhotoDemo/.classpath , 551
PhotoDemo/.project , 845
PhotoDemo/AndroidManifest.xml , 1031
PhotoDemo/bin/AndroidManifest.xml , 1031
PhotoDemo/bin/classes/android/support/v7/appcompat/R$anim.class , 629
PhotoDemo/bin/classes/android/support/v7/appcompat/R$attr.class , 5136
PhotoDemo/bin/classes/android/support/v7/appcompat/R$bool.class , 763
PhotoDemo/bin/classes/android/support/v7/appcompat/R$color.class , 594
PhotoDemo/bin/classes/android/support/v7/appcompat/R$dimen.class , 1530
PhotoDemo/bin/classes/android/support/v7/appcompat/R$drawable.class , 5191
PhotoDemo/bin/classes/android/support/v7/appcompat/R$id.class , 2556
PhotoDemo/bin/classes/android/support/v7/appcompat/R$integer.class , 445
PhotoDemo/bin/classes/android/support/v7/appcompat/R$layout.class , 1629
PhotoDemo/bin/classes/android/support/v7/appcompat/R$string.class , 1141
PhotoDemo/bin/classes/android/support/v7/appcompat/R$style.class , 9582
PhotoDemo/bin/classes/android/support/v7/appcompat/R$styleable.class , 6541
PhotoDemo/bin/classes/android/support/v7/appcompat/R.class , 1015
PhotoDemo/bin/classes/com/tc/app/MyApplication.class , 1791
PhotoDemo/bin/classes/com/tc/photodemo/adapter/Mypager.class , 1648
PhotoDemo/bin/classes/com/tc/photodemo/BuildConfig.class , 341
PhotoDemo/bin/classes/com/tc/photodemo/MainActivity$1.class , 961
PhotoDemo/bin/classes/com/tc/photodemo/MainActivity.class , 969
PhotoDemo/bin/classes/com/tc/photodemo/PhotoActivity$1.class , 1540
PhotoDemo/bin/classes/com/tc/photodemo/PhotoActivity$2.class , 1549
PhotoDemo/bin/classes/com/tc/photodemo/PhotoActivity.class , 4711
PhotoDemo/bin/classes/com/tc/photodemo/R$anim.class , 593
PhotoDemo/bin/classes/com/tc/photodemo/R$attr.class , 5100
PhotoDemo/bin/classes/com/tc/photodemo/R$bool.class , 727
PhotoDemo/bin/classes/com/tc/photodemo/R$color.class , 558
PhotoDemo/bin/classes/com/tc/photodemo/R$dimen.class , 1592
PhotoDemo/bin/classes/com/tc/photodemo/R$drawable.class , 5283
PhotoDemo/bin/classes/com/tc/photodemo/R$id.class , 2762
PhotoDemo/bin/classes/com/tc/photodemo/R$integer.class , 409
PhotoDemo/bin/classes/com/tc/photodemo/R$layout.class , 1667
PhotoDemo/bin/classes/com/tc/photodemo/R$menu.class , 382
PhotoDemo/bin/classes/com/tc/photodemo/R$string.class , 1211
PhotoDemo/bin/classes/com/tc/photodemo/R$style.class , 9614
PhotoDemo/bin/classes/com/tc/photodemo/R$styleable.class , 6689
PhotoDemo/bin/classes/com/tc/photodemo/R.class , 891
PhotoDemo/bin/classes.dex , 2088672
PhotoDemo/bin/dexedLibs/android-support-v4-640dc1e051998cdaa923ff508fe87807.jar , 242174
PhotoDemo/bin/dexedLibs/android-support-v7-appcompat-4775b3d00ea34ea849ae622c594f7151.jar , 150141
PhotoDemo/bin/dexedLibs/appcompat_v7_3-387443d41bf5a491628e974c5b84e5f6.jar , 166
PhotoDemo/bin/dexedLibs/universal-image-loader-1.9.3-4010e1c23093383f998dc6c47c581485.jar , 64505
PhotoDemo/bin/jarlist.cache , 337
PhotoDemo/bin/PhotoDemo.apk , 862426
PhotoDemo/bin/R.txt , 31061
PhotoDemo/bin/res/crunch/drawable-hdpi/checked.png , 180
PhotoDemo/bin/res/crunch/drawable-hdpi/ic_launcher.png , 5964
PhotoDemo/bin/res/crunch/drawable-hdpi/not_check.png , 180
PhotoDemo/bin/res/crunch/drawable-mdpi/ic_launcher.png , 3112
PhotoDemo/bin/res/crunch/drawable-xhdpi/ic_launcher.png , 9355
PhotoDemo/bin/res/crunch/drawable-xxhdpi/ic_launcher.png , 17889
PhotoDemo/bin/resources.ap_ , 388486
PhotoDemo/gen/android/support/v7/appcompat/R.java , 41086
PhotoDemo/gen/com/tc/photodemo/BuildConfig.java , 158
PhotoDemo/gen/com/tc/photodemo/R.java , 181182
PhotoDemo/ic_launcher-web.png , 51394
PhotoDemo/libs/android-support-v4.jar , 648327
PhotoDemo/libs/universal-image-loader-1.9.3.jar , 160443
PhotoDemo/proguard-project.txt , 781
PhotoDemo/project.properties , 609
PhotoDemo/res/drawable/check.xml , 305
PhotoDemo/res/drawable-hdpi/checked.png , 1091
PhotoDemo/res/drawable-hdpi/ic_launcher.png , 7658
PhotoDemo/res/drawable-hdpi/not_check.png , 1092
PhotoDemo/res/drawable-mdpi/ic_launcher.png , 3777
PhotoDemo/res/drawable-xhdpi/ic_launcher.png , 12516
PhotoDemo/res/drawable-xxhdpi/ic_launcher.png , 24777
PhotoDemo/res/layout/activity_main.xml , 526
PhotoDemo/res/layout/fragment_main.xml , 1347
PhotoDemo/res/menu/main.xml , 419
PhotoDemo/res/values/dimens.xml , 220
PhotoDemo/res/values/strings.xml , 226
PhotoDemo/res/values/styles.xml , 699
PhotoDemo/res/values-v11/styles.xml , 331
PhotoDemo/res/values-v14/styles.xml , 388
PhotoDemo/res/values-w820dp/dimens.xml , 381
PhotoDemo/src/com/tc/app/MyApplication.java , 788
PhotoDemo/src/com/tc/photodemo/adapter/Mypager.java , 1124
PhotoDemo/src/com/tc/photodemo/MainActivity.java , 719
PhotoDemo/src/com/tc/photodemo/PhotoActivity.java , 4304
没有账号? 忘记密码?

社交账号快速登录