android项目实战 --ListView 头部ViewPager广告轮询图效果
 
 
- 导入photoview相关代码:


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="160dp"
android:background="@color/white" >
<com.soyoungboy.widget.loopviewpager.AutoLoopViewPager
android:id="@+id/pager"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<com.soyoungboy.widget.viewpagerindicator.CirclePageIndicator
android:id="@+id/indicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="5dp"
android:padding="5dp" />
</RelativeLayout>
- public class PhotoViewActivity extends BaseFragmentActivity {
 private com.soyoungboy.widget.loopviewpager.AutoLoopViewPager pager;
 private int[] imageViewIds;
 private com.soyoungboy.widget.viewpagerindicator.CirclePageIndicator indicator;
 private List<String> imageList = new ArrayList<String>(Arrays.asList(
 "http://pic.nipic.com/2008-07-11/20087119630716_2.jpg",
 "http://pic.nipic.com/2008-07-11/20087119630716_2.jpg",
 "http://pic.nipic.com/2008-07-11/20087119630716_2.jpg"));
 @Override
 protected void onCreate(Bundle arg0) {
 super.onCreate(arg0);
 setContentView(R.layout.activity_photoview);
 initView();
 }
 @Override
 protected void initView() {
 pager = (com.soyoungboy.widget.loopviewpager.AutoLoopViewPager) findViewById(R.id.pager);
 indicator = (com.soyoungboy.widget.viewpagerindicator.CirclePageIndicator) findViewById(R.id.indicator);
 //设置要显示的图片内容
 imageViewIds = new int[] { R.drawable.house_background, R.drawable.house_background_1, R.drawable.house_background_2};
 //适配器
 GalleryPagerAdapter galleryAdapter = new GalleryPagerAdapter();
 pager.setAdapter(galleryAdapter);
 indicator.setViewPager(pager);
 //控制距离左边,上边,右边,下边的px距离
 indicator.setPadding(5, 5, 10, 5);
 }
 @Override
 protected void initTitleView() {
 }
 @Override
 protected void click(View view) {
 }
 //轮播图适配器
 public class GalleryPagerAdapter extends PagerAdapter {
 @Override
 public int getCount() {
 return imageViewIds.length;
 }
 @Override
 public boolean isViewFromObject(View view, Object object) {
 return view == object;
 }
 @Override
 public Object instantiateItem(ViewGroup container, int position) {
 ImageView item = new ImageView(PhotoViewActivity.this);
 //Imageview上面显示图片
 item.setImageResource(imageViewIds[position]);
 ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(-1, -1);
 item.setLayoutParams(params);
 item.setScaleType(ImageView.ScaleType.FIT_XY);
 container.addView(item);
 final int pos = position;
 //Imageview单击事件处理
 item.setOnClickListener(new View.OnClickListener() {
 @Override
 public void onClick(View v) {
 //进入ImageGalleryActivity代码里面去
 Intent intent = new Intent(PhotoViewActivity.this, ImageGalleryActivity.class);
 intent.putStringArrayListExtra("images", (ArrayList<String>) imageList);
 intent.putExtra("position", pos);
 startActivity(intent);
 }
 });
 return item;
 }
 @Override
 public void destroyItem(ViewGroup collection, int position, Object view) {
 collection.removeView((View) view);
 }
 }
 @Override
 protected void onResume() {
 super.onResume();
 //开始自动左右切换图片
 pager.startAutoScroll();
 }
 @Override
 protected void onPause() {
 super.onPause();
 //结束自动左右切换图片
 pager.stopAutoScroll();
 }
 }
- <?xml version="1.0" encoding="utf-8"?> 
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:fitsSystemWindows="true"
 android:background="@color/black"> <android.support.v4.view.ViewPager
 android:id="@+id/viewer"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:layout_below="@+id/layoutHeader" /> </RelativeLayout>
public class ImageGalleryActivity extends BaseFragmentActivity {
    private int position;
    private List<String> imgUrls; //图片列表
    private TextView headTitle;
    private Button headBackBtn;
    private ViewPager mViewPager;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_touch_gallery);
        Intent intent = getIntent();
        position = intent.getIntExtra("position", 0);
        //获取图片的url List集合
        imgUrls = intent.getStringArrayListExtra("images");
        if(imgUrls == null) {
            imgUrls = new ArrayList<>();
        }
        initGalleryViewPager();
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
    }
    private void initGalleryViewPager() {
        PhotoViewAdapter pagerAdapter = new PhotoViewAdapter(this, imgUrls);
        pagerAdapter.setOnItemChangeListener(new PhotoViewAdapter.OnItemChangeListener() {
            int len = imgUrls.size();
            @Override
            public void onItemChange(int currentPosition) {
                //滑动到总图片数目的几分之几
//                headTitle.setText((currentPosition+1) + "/" + len);
            }
        });
        mViewPager = (ViewPager)findViewById(R.id.viewer);
        mViewPager.setOffscreenPageLimit(3);
        mViewPager.setAdapter(pagerAdapter);
        mViewPager.setCurrentItem(position);
    }
    @Override
    protected void initView() {
    }
    @Override
    protected void initTitleView() {
    }
    @Override
    protected void click(View view) {
    }
}
android项目实战 --ListView 头部ViewPager广告轮询图效果的更多相关文章
- Android开发之ViewPager实现轮播图(轮播广告)效果的自定义View
		最近开发中需要做一个类似京东首页那样的广告轮播效果,于是采用ViewPager自己自定义了一个轮播图效果的View. 主要原理就是利用定时任务器定时切换ViewPager的页面. 效果图如下: 主页面 ... 
- Android项目实战(四十七):轮播图效果Viewpager
		简易.常用的轮播图效果ViewPager ,老技术了,记一笔留着以后ctrl C + ctrl V 需求如下: 不定张个数的ImagView轮播,右下角显示轮播点图标,每隔固定时间切换下一张,最 ... 
- (转载)Android项目实战(二十八):使用Zxing实现二维码及优化实例
		Android项目实战(二十八):使用Zxing实现二维码及优化实例 作者:听着music睡 字体:[增加 减小] 类型:转载 时间:2016-11-21我要评论 这篇文章主要介绍了Android项目 ... 
- Android项目实战(二十九):酒店预定日期选择
		先看需求效果图: 几个需求点: 1.显示当月以及下个月的日历 (可自行拓展更多月份) 2.首次点击选择"开始日期",再次点击选择"结束日期" (1).如果&qu ... 
- Android项目实战--手机卫士开发系列教程
		<ignore_js_op> banner131010.jpg (71.4 KB, 下载次数: 0) 下载附件 保存到相册 2 分钟前 上传 Android项目实战--手机卫士01- ... 
- Android项目实战(四十九):Andoird 7.0+相机适配
		解决方案类似: Android项目实战(四十):Andoird 7.0+ 安装APK适配 解决方法: 一.在AndroidManifest.xml 文件中添加 四大组件之一的 <provider ... 
- Android项目实战(三十二):圆角对话框Dialog
		前言: 项目中多处用到对话框,用系统对话框太难看,就自己写一个自定义对话框. 对话框包括:1.圆角 2.app图标 , 提示文本,关闭对话框的"确定"按钮 难点:1.对话框边框圆角 ... 
- (转载)Android项目实战(三十二):圆角对话框Dialog
		Android项目实战(三十二):圆角对话框Dialog 前言: 项目中多处用到对话框,用系统对话框太难看,就自己写一个自定义对话框. 对话框包括:1.圆角 2.app图标 , 提示文本,关闭对话 ... 
- (转载)Android项目实战(二十七):数据交互(信息编辑)填写总结
		Android项目实战(二十七):数据交互(信息编辑)填写总结 前言: 项目中必定用到的数据填写需求.比如修改用户名的文字编辑对话框,修改生日的日期选择对话框等等.现总结一下,方便以后使用. 注: ... 
随机推荐
- 关于C/C++中的“auto”
			C/C++ 98标准 C++03标准 意思完全一样:auto被解释为一个自动存储变量的关键字,也就是申明一块临时的变量内存.auto的出现意味着,当前变量的作用域为当前函数或代码段的局部变量,意味着当 ... 
- 采用apicloud开发移动端项目心得体会
			作为第一批吃螃蟹的,来说一说apicloud做移动端项目的一些体会. 刚开始接到项目,需要移动端开发两个项目,公司人员里面没有一个会原生android或者ios开发的,目前能出的技术也就是web,后端 ... 
- 用linux 命令 执行ci框架的方法
			最近要跑一个数据量比较大的脚本,刚开始在浏览器页面访问发行nginx 5.4 超时, 又不想去修改nginx的连接时间,只能在服务器执行了, 执行方法:进入到ci 的根目录:#php index.ph ... 
- POJ 半平面交 模板题 三枚
			给出三个半平面交的裸题. 不会的上百度上谷(gu)歌(gou)一下. 毕竟学长的语文是体育老师教的.(卡格玩笑,别当真.) 这种东西明白就好,代码可以当模板. //poj1474 Video Surv ... 
- 网页视频下载牛逼工具,支持各种格式转换,比如腾讯视频格式qlv转mp4
			这种思路真是创新,原文地址:http://jingyan.baidu.com/article/5225f26b03f047e6fb090860.html 软件工具名字:维棠下载. 上图: 1:搜索视频 ... 
- YARN的capacity调度器主要配置分析
			yarn中一个基本的调度单元是队列. yarn的内置调度器: 1.FIFO先进先出,一个的简单调度器,适合低负载集群.2.Capacity调度器,给不同队列(即用户或用户组)分配一个预期最小容量,在每 ... 
- 【USACO】滑雪课程
			滑雪课程贝西去科罗拉多州去滑雪,不过还她不太会玩,只是个能力为 1 的渣渣.贝西从 0 时刻进入滑雪场,一到 T 时刻就必须离开.滑雪场里有 N 条斜坡,第 i 条斜坡滑行一次需要 Di 分钟,要求游 ... 
- 网站URL重写(Java UrlRewrite 的使用)
			现在大部分的网站和商城都会使用到URL重写,接触到这个,也是因为正在做的电子商务商城.URL重写,是将原有的URL采用另一种规则来显示,使得用户方便访问同时也屏蔽一些信息. 在此说下它的好处,在开发过 ... 
- torisegit 保存帐号密码
			设置 -> git 编辑本地 .git/config 增加 [credential] helper = store 
- Spring in Action --- 第二章  装配Bean
			Spirng配置的可选方案 在XML中进行显示配置 在Java中进行显示配置 隐式的bean发现机制和自动装配 bean装配 1. 在希望被扫描到的类上加注解 @Component 2. 基于不同的配 ... 
