package com.exmple.viewpage2;

import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;

import com.examle.netUtil.NetUtill;
import com.examle.vo.Super;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.lidroid.xutils.BitmapUtils;

import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.support.v4.view.ViewPager;
import android.view.View;
import android.widget.ImageView;
import android.widget.ImageView.ScaleType;
import android.widget.LinearLayout;

public class MainActivity extends Activity {

private ViewPager viewpage;
private List<Super> li;
private List<View> dots;
int count = 0;
int odl = 0;
Handler ha = new Handler() {
public void handleMessage(android.os.Message msg) {

viewpage.setCurrentItem(count);
dots.get(count).setBackgroundResource(R.drawable.founce);
dots.get(odl).setBackgroundResource(R.drawable.normal);
odl=count;

};
};
private LinearLayout line;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewpage = (ViewPager) findViewById(R.id.viewpage);
line = (LinearLayout) findViewById(R.id.line);
new Asy().execute(NetUtill.JSON_URL1);

}

public class Asy extends AsyncTask<String, Integer, String> {

@Override
protected String doInBackground(String... params) {
String url = params[0];
String str = NetUtill.JsonData(url);

return str;
}

@Override
protected void onPostExecute(String result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
BitmapUtils bit = new BitmapUtils(MainActivity.this);
Gson gs = new Gson();
List<ImageView> lis = new ArrayList<ImageView>();

li = gs.fromJson(result, new TypeToken<List<Super>>() {
}.getType());

for (int i = 0; i < li.size(); i++) {
ImageView image = new ImageView(MainActivity.this);
image.setScaleType(ScaleType.FIT_XY);
bit.display(image, "http://172.17.29.120/localuser/ljy/jc/"
+ li.get(i).getSrc());
lis.add(image);
}
Apater ap = new Apater(lis, MainActivity.this);

viewpage.setAdapter(ap);

getDont();
dots.get(0).setBackgroundResource(R.drawable.founce);
Timer time = new Timer();
time.schedule(new TimerTask() {

@Override
public void run() {
count++;
if (count == li.size()) {
count = 0;

}
ha.sendEmptyMessage(1);

}
}, 2000, 2000);

}

public void getDont() {
dots = new ArrayList<View>();
for (int i = 0; i < li.size(); i++) {
View view = View
.inflate(MainActivity.this, R.layout.view, null);
View dot = view.findViewById(R.id.view1);

dots.add(dot);
line.addView(view);
}
}

}

}

//////////////////////////////Apater

package com.exmple.viewpage2;

import java.util.List;

import android.content.Context;
import android.support.v4.view.PagerAdapter;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;

public class Apater extends PagerAdapter {
List<ImageView> lis;
Context co;

public Apater(List<ImageView> lis, Context co) {
super();
this.lis = lis;
this.co = co;
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return lis.size();
}

@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0 == arg1;
}

@Override
public Object instantiateItem(ViewGroup container, int position) {
container.addView(lis.get(position));
return lis.get(position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
// super.destroyItem(container, position, object);
}

}

viewpage图片轮播的更多相关文章

  1. 使用viewPage实现图片轮播

    概述 图片循环播放这种效果,在许多的场合都能看到,只要一打开各大主流网站的首页几乎都有一个这样的组件,它可以很显目的提供给用户最近最火热的信息.因为它应用得如此之广泛,今天,我们就来写一下这个组件. ...

  2. 自定义View(二)ViewPage广告轮播

    自定义View的第二个学习案例,使用ViewPage实现广告轮播,通过组合现有的View实现效果如下: 有关ViewPage使用可以学习谷歌官方API,和训练案例: 1.使用ViewPage实现屏幕滑 ...

  3. Android 使用ViewPager 做的半吊子的图片轮播

    Android 使用ViewPager 做的半吊子的图片轮播 效果图 虽然不咋样,但是最起码的功能是实现了,下面我们来一步步的实现它. 界面 下面我们来分析一下界面的构成 整体的布局: 因为我们要做出 ...

  4. 原生js+css3实现图片自动切换,图片轮播

    运用CSS3transition及opacity属性 制作图片轮播动画 自己这两天根据用js来控制触发CSS3中transition属性,从而写出来的以CSS3动画为基础,js控制过程的图片轮播 运用 ...

  5. 纯javaScript、jQuery实现个性化图片轮播

    纯javaScript实现个性化图片轮播 轮播原理说明<如上图所示>: 1. 画布部分(可视区域)属性说明:overflow:hidden使得超出画布部分隐藏或说不可见.position: ...

  6. jQuery个性化图片轮播效果

    jQuery个性化图片轮播效果 购物产品展示:图片轮播器<效果如下所示> 思路说明: 每隔一段时间,实现图片的自动切换及选项卡选中效果,鼠标划入图片动画停止,划出或离开动画开始 两个区域: ...

  7. 原生JS实现"旋转木马"效果的图片轮播插件

    一.写在最前面 最近都忙一些杂七杂八的事情,复习软考.研读经典...好像都好久没写过博客了... 我自己写过三个图片轮播,一个是简单的原生JS实现的,没有什么动画效果的,一个是结合JQuery实现的, ...

  8. 基于面向对象的图片轮播(js原生代码)

    无论你想走多远,你都需要不断地走下去.前端最精华的便是原生的js,这也是我们前端工程师的技术分层的重要指标,也提现这你的代码能力,开发的水平.废话不多说,进入今天的主要分享————基于面向对象思想的图 ...

  9. jquery 图片轮播demo实现

    转载注明出处!!! 转载注明出处!!! 转载注明出处!!! 图片轮播demo,弄清楚过程其实是一个很简单的东西,看网上都没有什么实质性的代码,就自己把过程捋了一遍实现了. 这次因为随手写的,所以没有做 ...

随机推荐

  1. 记录:在老XPS1330上安装CentOS7

    下图是设置时的图片,注意分区设置. 下图是安装成功的画面. 下图是在Gnome桌面环境打开Firefox上本博客的画面. 注意点: 1.安装时没啥特殊的,就两点,一是要分区设置好,图省事就让自动分区: ...

  2. web storage: sessionStorage 和 localStorage

    // sessionStorage.setItem("message",str);function saveStorage(id){ var target = document.g ...

  3. rank 和 星星评级

    我们常常看到打分,如下图 这样的效果有几种方法 1.用:lt(index) /* $('dl').each(function(){ var ths = $(this); $(this).find('d ...

  4. free 命令

    free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存,及被内核使用的buffer.在Linux系统监控的工具中,free命令是最经常使用的命令之一. 1.命令格式: free [参 ...

  5. java中清空session

    session.removeAttribute("sessionname")是清除SESSION里的某个属性.     session.invalidate()是让SESSION失 ...

  6. Power-BI绿色开发平台

  7. echarts html传参+js请求+ashx服务 代码方式

    html 头传参方式 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <hea ...

  8. python_递归

    1.  递归示例 #coding:utf-8 #递归进行阶乘 def mm(num): if(num == 1): return 1 else: return mm(num-1) * num prin ...

  9. 点云匹配和ICP算法概述

    Iterative Closest Point (ICP) [1][2][3] is an algorithm employed to minimize the difference between ...

  10. button点击传多个参数

    // --------------------button点击传多个参数------------------------ UIButton *btn = [UIButton buttonWithTyp ...