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. busybox sz rz命令

    之前板子和电脑之间传送文件的时候都是通过tftp网络下载.所以找了一下在文件系统中使用串口上传文件的方法. rz和sz命令使用zmoderm协议,SecureCRT也用提供这个命令的支持.由于是串口, ...

  2. imx6 lvds 代码分析

    查看imx6 kernel中lvds设备和驱动的初始化过程. 相关文档: arm/arm/mach-mx6/board-mx6q_sabresd.c kernel/drivers/video/mxc/ ...

  3. LogBack配置详解(一)

    一:根节点<configuration>包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true. scanPeriod: 设置监测配置文 ...

  4. ionic一些常见问题及方法(网页链接式)

    ionic 进入二级目录以后隐藏底部导航栏(tabs) http://blog.csdn.net/shenshucong520/article/details/48287811ionic三级目录乃至多 ...

  5. PetaPoco模糊查询

    like '@0'  是错的,应该换成这样 like @0,原因是petapoco会自动把代码解析成'你好' 标签: Sql command = new Sql();command.Append(&q ...

  6. 发起post请求

    string postUrl = "https://api.mch.weixin.qq.com/mmpaymkttransfers/gethbinfo"; //string req ...

  7. 有用C函数集锦

    1. offsetof #include <stddef.h> size_t offsetof(type, member); The macro offsetof() returns th ...

  8. SocketServer model_use

    #!/usr/bin/env python #-*- coding:utf- -*- import SocketServer class MySocker(SocketServer.BaseReque ...

  9. Jboss消息 异常

    org.jboss.mq.SpyJMSException: Could not update message: 1 msg=13 hard STORED PERSISTENT queue=QUEUE. ...

  10. 详解 ASP.NET并行,异步,多线程

    最近在学习.net4以上版本新特性的时候,发现在异步这方面提供了很多好玩的.以下Mark 2篇好文,温故而知新! http://www.cnblogs.com/wisdomqq/archive/201 ...