viewpage图片轮播
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图片轮播的更多相关文章
- 使用viewPage实现图片轮播
概述 图片循环播放这种效果,在许多的场合都能看到,只要一打开各大主流网站的首页几乎都有一个这样的组件,它可以很显目的提供给用户最近最火热的信息.因为它应用得如此之广泛,今天,我们就来写一下这个组件. ...
- 自定义View(二)ViewPage广告轮播
自定义View的第二个学习案例,使用ViewPage实现广告轮播,通过组合现有的View实现效果如下: 有关ViewPage使用可以学习谷歌官方API,和训练案例: 1.使用ViewPage实现屏幕滑 ...
- Android 使用ViewPager 做的半吊子的图片轮播
Android 使用ViewPager 做的半吊子的图片轮播 效果图 虽然不咋样,但是最起码的功能是实现了,下面我们来一步步的实现它. 界面 下面我们来分析一下界面的构成 整体的布局: 因为我们要做出 ...
- 原生js+css3实现图片自动切换,图片轮播
运用CSS3transition及opacity属性 制作图片轮播动画 自己这两天根据用js来控制触发CSS3中transition属性,从而写出来的以CSS3动画为基础,js控制过程的图片轮播 运用 ...
- 纯javaScript、jQuery实现个性化图片轮播
纯javaScript实现个性化图片轮播 轮播原理说明<如上图所示>: 1. 画布部分(可视区域)属性说明:overflow:hidden使得超出画布部分隐藏或说不可见.position: ...
- jQuery个性化图片轮播效果
jQuery个性化图片轮播效果 购物产品展示:图片轮播器<效果如下所示> 思路说明: 每隔一段时间,实现图片的自动切换及选项卡选中效果,鼠标划入图片动画停止,划出或离开动画开始 两个区域: ...
- 原生JS实现"旋转木马"效果的图片轮播插件
一.写在最前面 最近都忙一些杂七杂八的事情,复习软考.研读经典...好像都好久没写过博客了... 我自己写过三个图片轮播,一个是简单的原生JS实现的,没有什么动画效果的,一个是结合JQuery实现的, ...
- 基于面向对象的图片轮播(js原生代码)
无论你想走多远,你都需要不断地走下去.前端最精华的便是原生的js,这也是我们前端工程师的技术分层的重要指标,也提现这你的代码能力,开发的水平.废话不多说,进入今天的主要分享————基于面向对象思想的图 ...
- jquery 图片轮播demo实现
转载注明出处!!! 转载注明出处!!! 转载注明出处!!! 图片轮播demo,弄清楚过程其实是一个很简单的东西,看网上都没有什么实质性的代码,就自己把过程捋了一遍实现了. 这次因为随手写的,所以没有做 ...
随机推荐
- asp.net 把数据导出为excel
本篇介绍c#中如何使用DataTable导出Excel,至于其他的导出方法,这里不作介绍! 1.首页从数据库读取数据,得到DataTable: DataTable dt = HelperExecute ...
- 用Dictionary代替if
public Dictionary<string, System.Drawing.RotateFlipType> dicRFT = new Dictionary<string, Sy ...
- spring mvc 静态资源 404问题
spring mvc 静态资源 404问题 在web.xml配置servlet-mapping的时候,如果url-pattern设置为"/" (如下),很多人都会遇到导入js,cs ...
- The include feature of SQL Server Index
1. Why we need the index 'include' feature? For SQLServer , the length of all the index key have a l ...
- kinect数据读取
http://blog.csdn.net/timebomb/article/details/7169372
- APICloud上openFrameGroup把菜单挡住了,怎么处理?
问:openFrameGroup把菜单挡住了,怎么处理? 试了sendFrameToBack没反应,又不能页面自己openFrameGroup,不知道该怎么办.而且用另外的页面先openFrameGr ...
- navicat 链接不上mysql
1 查看 my.cnf 的配置bindhost 127.0.0.1 注释掉 2 grant all privileges on *.* to root@'%' identified by 'passw ...
- Vue.2.0.5-计算属性
计算属性 在模板中绑定表达式是非常便利的,但是它们实际上只用于简单的操作.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example"> { ...
- JavaScript学习笔记之BOM
BOM的核心对象是window,它既表示浏览器窗口以及页面可见区域,同时也是ECMAScript中的Globe对象,所有的全局变量和函数都是它的属性,并且所有的原声函数以及其他函数也都存在于它的命名空 ...
- 关于伪类元素:before和:after
关于伪类元素:before和:after CSS中存在一些比较特殊的属性,称之为伪类,它们之中最常用的就是定义链接的伪 :link:未被访问状态 :visited:已被访问状态 :hover:鼠标 ...