关于ViewPager的初步理解
来源:互联网 发布:迅捷pdf合并软件 编辑:程序博客网 时间:2024/04/30 08:08
关于ViewPager我只是做了简单最基本的功能。我看了好多资料,关于ViewPager以后的用处会非常大,在这里先了解一下什么是ViewPager。
关于ViewPager就是手指滑动时,能从一个界面滑动到另一个界面。效果如下:
下面是Layoutde 的代码:
<?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:orientation="vertical" > <android.support.v4.view.ViewPager android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:id="@+id/pager" > <android.support.v4.view.PagerTabStrip android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="top" android:id="@+id/tab" > </android.support.v4.view.PagerTabStrip></android.support.v4.view.ViewPager></LinearLayout>
package com.example.viewpager;import java.util.ArrayList;import java.util.List;import com.example.tab.R;import android.graphics.Color;import android.os.Bundle;import android.support.v4.view.PagerTabStrip;import android.support.v4.view.PagerTitleStrip;import android.support.v4.view.ViewPager;import android.support.v7.app.ActionBarActivity;import android.view.View;public class test_viewpager extends ActionBarActivity{private List<View>viewList;private ViewPager pager;private List<String> titleList;private PagerTabStrip tab;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.viewpager_main);//定义一个类型为View型的数组viewList = new ArrayList<View>();//把相应的布局转化为View型View view1 = View.inflate(getApplicationContext(), R.layout.viewpager1, null);View view2 = View.inflate(getApplicationContext(), R.layout.viewpager2, null);View view3 = View.inflate(getApplicationContext(), R.layout.viewpager3, null);//把转化过的布局一个个添加到viewList数组里viewList.add(view1);viewList.add(view2);viewList.add(view3);//为每一个view定义标题,把这些标题放入到数组里面titleList = new ArrayList<String>();//为页卡增加标题titleList.add("第一页");titleList.add("第二页");titleList.add("第三页");//为PagerTabStrip设置一些属性,为标题设置一些属性tab = (PagerTabStrip) findViewById(R.id.tab);tab.setBackgroundColor(Color.GRAY);//为标题设置背景颜色tab.setTextColor(Color.RED);//设置 标题的字体颜色tab.setDrawFullUnderline(false);//标题框中没有最下面的一道线tab.setTabIndicatorColor(Color.BLUE);//设置滑动时那个小线线//创建pageradapter适配器MyAdapter adapter = new MyAdapter(viewList,titleList);//这里用的适配器是我们自定义的适配器//初始化ViewPagerpager = (ViewPager) findViewById(R.id.pager);//ViewPager加载适配器pager.setAdapter(adapter);}}
下面是自定义Adapter的代码:
package com.example.viewpager;import java.util.List;import android.support.v4.view.PagerAdapter;import android.view.View;import android.view.ViewGroup;public class MyAdapter extends PagerAdapter{private List<View>viewList;private List<String>titleList;public MyAdapter(List<View>viewList,List<String>titleList){this.viewList = viewList;this.titleList = titleList;}/* * 返回的是页卡的数量 * */@Overridepublic int getCount() {// TODO Auto-generated method stubreturn viewList.size();}@Override/* * View是否来自于对象 * */public boolean isViewFromObject(View arg0, Object arg1) {// TODO Auto-generated method stubreturn arg0 == arg1;}/* * 实例化一个页卡 * * */@Overridepublic Object instantiateItem(ViewGroup container, int position) {// TODO Auto-generated method stubcontainer.addView(viewList.get(position));return viewList.get(position);}@Override/* * 销毁一个页卡 * */public void destroyItem(ViewGroup container, int position, Object object) {// TODO Auto-generated method stubcontainer.removeView(viewList.get(position));}/* * 设置ViewPager页卡的标题 * * */@Overridepublic CharSequence getPageTitle(int position) {// TODO Auto-generated method stubreturn titleList.get(position);}}
0 0
- 关于ViewPager的初步理解
- 关于ThreadLocal的初步理解
- 关于递归的初步理解
- Android中的ViewPager和 PagerAdapter的初步理解和使用
- 关于NP问题的初步理解
- 关于bag of words 的初步理解
- 关于版本管理的一些初步理解
- Java关于多态的初步理解
- 关于协程的初步理解
- 关于单点登录【SSO】的初步理解
- 关于单点登录【SSO】的初步理解
- rn笔记:关于navigator的初步理解
- 关于Java的动态代理的初步理解
- 关于JSP乱码问题的初步理解和解决
- 关于用户态和内核态的初步理解
- javaweb学习笔记之关于分层结构的初步理解
- 关于球谐函数一些初步的理解
- 关于有理式部分分式化解的初步理解
- 面向目标的场景设计
- openstack创建VM虚机命令
- 基于Redis Cluster的Tomat的Session共享实现
- HTML标签学习总结(3)-用户交互、表单标签
- sort()排序
- 关于ViewPager的初步理解
- 纯css实现垂直水平居中
- HDU 3697 Selecting courses
- Codeforces Round #365 (Div. 2) B. Mishka and trip
- Linux命令大全
- 实习杂记(29):arrayList的remove不要乱用,会死人的
- POJ3615
- ERP免费模拟上线
- 数据结构实验之排序五:归并求逆序数