ViewPager实现翻页步骤

之前觉得滑动翻页的效果挺炫的,目前初学android,所以自己在项目中尝试实现了这个效果。数据是动态的。实现效果主要有几个步骤:

1、创建两个布局文件,一个布局文件定义viewPager组件,如  <android.support.v4.view.ViewPager
        android:id="@+id/vp_articles"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </android.support.v4.view.ViewPager >;另外一个布局文件定义在viewPager中要展示的View,因为有点复杂,代码就不贴了

2、创建一个activity管理viewPager,主要的java代码有:

public class ActivityArticleTest extends BaseActivity {
 
 private ViewPager viewPager = null;   //定义viewPager
 private LayoutInflater mInflater = null; //加载布局文件用
 private ArrayList<View> viewsList = null;  //用arraylist 存储要展现的view

protected void onCreate(Bundle arg0) {

viewPager = (ViewPager) findViewById(R.id.vp_articles);
  mInflater = LayoutInflater.from(this);
  viewsList = new ArrayList<View>();

//作为一个例子 往viewList添加View
  for(int j =0 ; j<idslist.size();j++){
   View view = mInflater.inflate(R.layout.activity_resumption_article, null);
   viewsList.add(view);

//给viewPager添加适配器,也可继承PagerAdapter

viewPager.setAdapter(new PagerAdapter() {
   @Override
   public boolean isViewFromObject(View arg0, Object arg1) {
    // TODO Auto-generated method stub
    return arg0==arg1;
   }
   @Override
   public int getCount() {
    // TODO Auto-generated method stub
    return viewsList.size();
   }
   @Override
   public int getItemPosition(Object object) {
    // TODO Auto-generated method stub
    return viewsList.indexOf(object);
   }

//这个方法和下面这个方法慢重要的
   @Override
   public Object instantiateItem(ViewGroup container, int position) {
    container.addView(viewsList.get(position));
    return viewsList.get(position);
   }
   @Override
   public void destroyItem(ViewGroup container, int position,
     Object object) {
    // TODO Auto-generated method stub
     container.removeView(viewsList.get(position)); 
   }
  });
  viewPager.setOnPageChangeListener(new OnPageChangeListener() {
   @Override
   public void onPageSelected(int arg0) {
    //重新发起请求,更新所在view
    getDataFromRepreWeb(method, idslist.get(arg0));
   }
   @Override
   public void onPageScrolled(int arg0, float arg1, int arg2) {
    // TODO Auto-generated method stub
    
   }
   
   @Override
   public void onPageScrollStateChanged(int arg0) {
    // TODO Auto-generated method stub
    
   }
  });  }

}

模式简单,重要的是和项目的业务结合

ViewPager实现翻页步骤,布布扣,bubuko.com

时间: 2024-10-25 00:07:44

ViewPager实现翻页步骤的相关文章

android viewpager 图片翻页例子

使用ViewPager这个类可以轻松实现多个页面的滑动功能 viewpager默认在工具界面上是找不到的,需求添加android-support-v4.jar包: 如果没有找到,需要打开Android SDK Manager在Extras中进行下载,最后记得引入工程中并build path. (不过,我把代码直接COPY到.XML好像就会自动添加了) 例子说明:item01..item08是要翻页的图片,page_indicator_focused,page_indicator_unfocuse

android ViewPager左右滑动翻页,并可以删除page

首先新建一个Activity,继承FragmentActivity. 初始化一个Fragment的List集合,用于像FragmentStatePagerAdapter填充数据,而ViewPager由FragmentStatePagerAdapter的实例进行初始化.和ListView一样,Fragment的List集合的数据变了,就通知FragmentStatePagerAdapter进行界面刷新. ArrayList<Fragment> fragments =new ArrayList&l

【转】android 欢迎界面翻页成效,仿微信第一次登陆介绍翻页界面

android 欢迎界面翻页效果,仿微信第一次登陆介绍翻页界面 本实例做的相对比较简单主要是对翻页控件的使用,有时候想要做一些功能是主要是先了解下是否有现成的控件可以使用,做起来比较简单不用费太大的劲去找别的资料,或者别的办法设计.有空多读读android API了解熟悉了做什么都比较容易.(注意:ViewPager用于实现多页面的切换效果,该类存在于Google的兼容包里面,所以在引用时记得在BuilldPath中加入“android-support-v4.jar” 如果sdk是4.0及以上的

js 翻页

翻页功能是js很基础的一个算法,且用得很多,所以必须掌握此项技能. 我们要想清楚在实现翻页的过程中需要哪几个步骤: 1.我们首先需要的变量有哪些,必须的有一个存放当前页码的变量nowPage.一个存放最大页数的变量maxPage,再一个存放每一页显示多少行的常量 PAGECELL: 2.我们需要哪些函数来实现,实现哪些功能,肯定要有的是 向上翻页.向下翻页 3.过程中要注意什么,要翻到下一页,就必须清楚当页的内容,不然会在当前页下面加载 其实就这么简单,考虑清楚后就可以进行代码的实现了. 以上思

OC纯代码全手工打造ScroolView实现翻页

OC纯代码全手工打造ScroolView实现翻页 1. 概述 分为三部分: 上部标题ScrollView 下部内容ScrollView 上部当前页 标示线 2. 效果 上下两部分都随着手势的滑动一块滑动. 点击上部分,下部分也随着一起动. 上部分标示线,随手势改变位置,标识当前滑动所在页. 3. 步骤 分为创建和动作两部分 3.1.  创建标题ScollView 3.2.  创建标题标线 3.3.  创建内容ScollView

Android 聊天表情输入、表情翻页带效果、下拉刷新聊天记录

经过一个星期的折腾,终于做完了这个Android 聊天表情输入.表情翻页带效果.下拉刷新聊天记录.这只是一个单独聊天表情的输入,以及聊天的效果实现.因为我没有写服务器,所以没有双方聊天的效果.主要是聊天中表情的选择,发送.表情翻页带有不同的效果.我在主要代码中都写了注释.下面看代码实现.附上本文源码,代码较多. 下载地址:点击 一.先看实现的效果图 二.调用接口以及设置MainActivity package com.example.activity; import java.util.Arra

Android UI【android 仿微信、QQ聊天,带表情,可翻页,带翻页拖动缓冲】

http://blog.csdn.net/lnb333666/article/details/8546497 如题,这是公司项目的一个功能模块,先上个效果图: 其次大致说说原理: 1,首先判断输入的字符,是否包含表情的文字,比如   这个表情对应的文件名为 emoji_1.png,它对应的文字描述 :[可爱],如果我们在输出的是输出这么一句话:老婆,我想你了.  那么我们对应的根本文字就是:老婆,我想你了[可爱]. 2,具体的转换过程就是用正则表达式比配文字中是否含有[xxx]这类的文字,如果有

jQuery easyUI的datagrid,如何在翻页以后仍能记录被选中的行

1.先给出问题解决后的代码 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%> 3 <% 4 String path = request.getContextP

jQuery翻页yunm.pager.js,涉及div局部刷新

前端的翻页插件有很多,bootstrap的翻页界面看起来就不错,做起来也易于上手,但应用于项目中的翻页实现还有有几个难点,分别是: 如何封装一个翻页插件,如题中的yunm.pager.js. 涉及到的div局部刷新该如何做. 翻页的总体流程涉及到的知识点很多,这篇文章我们也主要来关注以上两点,其余的内容,请自悟. 一.如何定义局部刷新的div 翻页时,我们一般只会刷新页面中涉及到翻页的父级div,那么该如何定义呢? <form rel="support_deal_page" ta