本文实例介绍了VIEwPager实现选项卡切换,效果图如下:
步骤一:这里使用兼容低版本的v4包进行布局,这里eclipse没有输入提示,所以要手动输入,文件名称“activity_main.xml”
<relativeLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" xmlns:tools="http://schemas.androID.com/tools" androID:layout_wIDth="match_parent" androID:layout_height="match_parent" tools:context=".MainActivity" > <androID.support.v4.vIEw.VIEwPager androID:ID="@+ID/vIEwpager" androID:layout_height="wrap_content" androID:layout_wIDth="wrap_content" > <androID.support.v4.vIEw.PagerTabStrip androID:ID="@+ID/tabstrip" androID:layout_height="wrap_content" androID:layout_wIDth="wrap_content" /> </androID.support.v4.vIEw.VIEwPager></relativeLayout>
步骤二:选项卡中的内容都是从布局文件中获取,所以我新建两个测试布局“layout1.xml”和“layout2.xml”,里面内容随意。
步骤三:布局已经完成,在MainActivity.java类中,实现关键功能。
首先要声明VIEwPager和PagerTabStrip对象,通过findVIEwByID分别找到资源ID,声明ArrayList<VIEw>来存放测试布局文件,核心代码如下:
package com.example.vIEwpager;import java.util.ArrayList;import androID.os.Bundle;import androID.app.Activity;import androID.graphics.color;import androID.support.v4.vIEw.PagerAdapter;import androID.support.v4.vIEw.PagerTabStrip;import androID.support.v4.vIEw.VIEwPager;import androID.support.v4.vIEw.VIEwPager.OnPagechangelistener;import androID.vIEw.Menu;import androID.vIEw.VIEw;import androID.vIEw.VIEwGroup;import androID.Widget.Toast;public class MainActivity extends Activity implements OnPagechangelistener { private VIEwPager vIEwpager; private PagerTabStrip tabstrip; private String[] Title={"首页","新闻","公告","图片"}; private ArrayList<VIEw> vIEws=new ArrayList<VIEw>(); @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); vIEwpager=(VIEwPager) findVIEwByID(R.ID.vIEwpager); tabstrip=(PagerTabStrip) findVIEwByID(R.ID.tabstrip); initial(); vIEwpager.setAdapter(new MyPagerAdapter()); } public voID initial(){ vIEws.add(getLayoutInflater().inflate(R.layout.layout1,null)); vIEws.add(getLayoutInflater().inflate(R.layout.layout2,null)); vIEws.add(getLayoutInflater().inflate(R.layout.layout1,null)); tabstrip.setBackgroundcolor(getResources().getcolor(androID.R.color.holo_blue_light)); tabstrip.setTabIndicatorcolor(getResources().getcolor(androID.R.color.holo_blue_bright)); tabstrip.setTextcolor(color.WHITE); vIEwpager.setonPagechangelistener(this); } class MyPagerAdapter extends PagerAdapter{ @OverrIDe public int getCount() { // Todo 自动生成的方法存根 return vIEws.size(); } @OverrIDe public Object instantiateItem(VIEwGroup container,int position) { VIEw v=vIEws.get(position); container.addVIEw(v); return v; } @OverrIDe public voID destroyItem(VIEwGroup container,int position,Object object) { // Todo 自动生成的方法存根 //super.destroyItem(container,position,object); container.removeVIEw(vIEws.get(position)); } @OverrIDe public boolean isVIEwFromObject(VIEw arg0,Object arg1) { // Todo 自动生成的方法存根 return arg0==arg1; } @OverrIDe public CharSequence getPageTitle(int position) { // Todo 自动生成的方法存根 return Title[position]; } }@OverrIDepublic voID onPageScrollStateChanged(int arg0) { // Todo 自动生成的方法存根 }@OverrIDepublic voID onPageScrolled(int arg0,float arg1,int arg2) { // Todo 自动生成的方法存根 }@OverrIDepublic voID onPageSelected(int arg0) { // Todo 自动生成的方法存根 //Toast.makeText(MainActivity.this,"新年快乐",Toast.LENGTH_SHORT).show();} }
以上就是本文的全部内容,还有一些问题会在之后的文章中继续学习,希望大家继续关注。
总结以上是内存溢出为你收集整理的Android ViewPager实现选项卡切换全部内容,希望文章能够帮你解决Android ViewPager实现选项卡切换所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)