ViewPager无限轮播图+小圆点+HttpURLConnection +handler+Thread
来源:互联网 发布:剑网3捏脸数据 编辑:程序博客网 时间:2024/06/07 17:50
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;
import com.google.gson.Gson;
import com.nostra13.universalimageloader.core.ImageLoader;
public class DetailActivity extends Activity {
private Gallery[] galleries;
private ViewPager vp;
private LinearLayout ll;
private ArrayList ivList;
Handler handler=new Handler(){ public void handleMessage(android.os.Message msg) { if (msg.what==0) { //msg.obj; //设置适配器 vp.setAdapter(new MyPagerAdapter(DetailActivity.this)); //设置监听 vp.setOnPageChangeListener(new OnPageChangeListener() { public void onPageSelected(int arg0) { for (int i = 0; i < ivList.size(); i++) { if (arg0%5==i) { ivList.get(i).setImageResource(R.drawable.dot_select); }else{ ivList.get(i).setImageResource(R.drawable.dot); } } } public void onPageScrolled(int arg0, float arg1, int arg2) { } public void onPageScrollStateChanged(int arg0) { } }); } if (msg.what==1) { int currentItem = vp.getCurrentItem(); currentItem++; vp.setCurrentItem(currentItem); handler.sendEmptyMessageDelayed(1, 2000); } };};@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_detail); vp = (ViewPager) findViewById(R.id.vp); ll = (LinearLayout) findViewById(R.id.ll); //初始化小圆点 initDot(); getData("http://..."); //实现轮播 handler.sendEmptyMessageDelayed(1, 2000);}public void initDot(){ ivList = new ArrayList<ImageView>(); for (int i = 0; i <galleries.length; i++) { ImageView iv = new ImageView(this); if (i==0) { iv.setImageResource(R.drawable.dot_select); }else{ iv.setImageResource(R.drawable.dot); } ivList.add(iv); LayoutParams params=new LayoutParams(20, 20); params.setMargins(5, 0, 5, 0); ll.addView(iv, params); }}//获取网络数据private void getData(final String string) { new Thread(new Runnable() { public void run() { try { URL url = new URL(string); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); int responseCode = connection.getResponseCode(); if (responseCode==200) { InputStream inputStream = connection.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(inputStream)); Gson g = new Gson(); goodsDtails gd = g.fromJson(br, goodsDtails.class); handler.obtainMessage(0, gd).sendToTarget(); } } catch (Exception e) { e.printStackTrace(); } } }).start();}
}
//MyPagerAdapter
public class MyPagerAdapter extends PagerAdapter {
private Context context;
private Gallery[] galleries;
public MyPagerAdapter(Context context, Gallery[] galleries) { super(); this.context = context; this.galleries = galleries;}@Overridepublic boolean isViewFromObject(View arg0, Object arg1) { return arg0==arg1;}@Overridepublic int getCount() { return Integer.MAX_VALUE;}public Object instantiateItem(android.view.ViewGroup container, int position) { ImageView iv = new ImageView(context); ImageLoader.getInstance().displayImage(galleries[position%galleries.length].normal_url, iv); container.addView(iv); return iv;};public void destroyItem(android.view.ViewGroup container, int position, Object object) { container.removeView((View) object);};
}
- ViewPager无限轮播图+小圆点+HttpURLConnection +handler+Thread
- Viewpager无限轮播加小圆点
- viewpager无限轮播加小圆点
- ViewPager+小圆点进行无限轮播
- ViewPager无限轮播加xml小圆点
- ViewPager自动无限轮播加小圆点
- Viewpager自动无限轮播+小圆点
- ViewPager小圆点无限轮播
- ViewPager加小圆点无限轮播
- viewpager无限轮播、加小圆点
- ViewPager小圆点无限轮播
- ViewPager+小圆点的无限轮播
- Viewpager实现小圆点无限轮播
- ViewPager实现无限轮播+小圆点
- viewPager的无限轮播加底部小圆点
- ViewPager轮播图 加小圆点
- ViewPager无限循环+底部小圆点动态滑动
- viewpager的无限轮播和小圆点的改变
- AsyncTask的代码
- Android Studio系列教程4 (Gradle基础)
- iOS笔记 常用代码
- python中的pandas小试
- 前端移动端页面开发
- ViewPager无限轮播图+小圆点+HttpURLConnection +handler+Thread
- Hinton's Dropout in 3 Lines of Python
- --initialize specified but the data directory has files in it. Aborting
- 我们在网页上轻轻点击一下,发生了些什么(上)
- Activiti进阶(五)——流程执行历史记录
- 【数据挖掘】:FP增长算法详解
- 二维码
- 判断是否连接网络以及是否是局域网
- aaaa