ViewPager实现简单的界面滑动
2016-02-22 13:30
351 查看
前言:本篇介绍了关于ViewPager的简单用法以及实现,在后续章节会继续添加其他因素。
主要代码片段如下:
源码下载地址:
http://download.csdn.net/detail/qq_23936173/9438967
主要代码片段如下:
1.activity_main.xml(主界面布局)
<?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="match_parent"> <android.support.v4.view.ViewPager android:id="@+id/viewpager_test" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout>
2.activity_one.xml(activity_two.xml、activity_three.xml与其类似,主要用于显示滑动界面的内容)
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ff0000" android:orientation="vertical"> </LinearLayout>
3.MainActivity.java
package com.lt.cn.viewpager1; import android.app.Activity; import android.os.Bundle; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.support.v7.app.ActionBarActivity; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import java.util.ArrayList; import java.util.List; public class MainActivity extends Activity { private View viewOne, viewTwo, viewThree; //三个页面 private ViewPager viewPager; private List<View> viewList; //页面数组 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); //初始化控件及页面 //适配器,类似ListView中的 //注意要写PagerAdapter,必须重写其中的四个函数,如下。 PagerAdapter pagerAdapter = new PagerAdapter() { @Override //返回显示页面的个数 public int getCount() { return viewList.size(); } @Override //不是很懂 public boolean isViewFromObject(View view, Object object) { return view == object; } @Override //删除指定位置的页面 public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(viewList.get(position)); } @Override //添加一个页面并返回该页面 public Object instantiateItem(ViewGroup container, int position) { container.addView(viewList.get(position)); return viewList.get(position); } }; viewPager.setAdapter(pagerAdapter); } public void init() { viewPager = (ViewPager) findViewById(R.id.viewpager_test); LayoutInflater inflater = getLayoutInflater(); viewOne = inflater.inflate(R.layout.activity_one, null); viewTwo = inflater.inflate(R.layout.activity_two, null); viewThree = inflater.inflate(R.layout.activity_three, null); viewList = new ArrayList<View>(); viewList.add(viewOne); viewList.add(viewTwo); viewList.add(viewThree); } }
源码下载地址:
http://download.csdn.net/detail/qq_23936173/9438967
相关文章推荐
- [DevExpress]treeList1背景色设置与自定义图标
- BeanUtils内省工具包
- CodeForces615B-Longtail Hedgehog-dp/图
- Mac下ssh配置相关
- js获取select选中的标签option的值
- Java静态导入(import static)需谨慎
- 内涵段子01
- 怎么实现EDIUS中闪白和闪黑效果的制作
- Java对象序列化ObjectOutputStream和ObjectInputStream示例
- AndroidStudio快捷键
- 如何判断MSI安装程序是否已经安装
- 直接对Excel读写操作
- VMware Workstation 12序列号
- CodeForces615A-Bulbs-模拟
- 程序员面试金典 1.8 翻转子串
- golang语法总结(七):常量计数器
- bzoj3673&3674 可持久化并查集 可持久化线段树
- Struts2+Jquery实现ajax并返回json类型数据
- java Map及Map.Entry详解
- [置顶] 关于getTop() .getBottom() .getLeft() .getRight()这几个函数