展会信息港展会大全

actionbar与viewpager的联合使用(android 3.0 ,level 11以上)
来源:互联网   发布日期:2015-10-02 16:48:57   浏览:1834次  

导读:actionbar与viewpager的联合使用(android 3.0 ,level 11以上)package com.example.pad;import java.util.ArrayList;import java.util.List;import android.app.ActionBar;import android.app.ActionBar.......

actionbar与viewpager的联合使用(android 3.0 ,level 11以上)

package com.example.pad;

import java.util.ArrayList;

import java.util.List;

import android.app.ActionBar;

import android.app.ActionBar.Tab;

import android.app.ActionBar.TabListener;

import android.app.Activity;

import android.app.FragmentTransaction;

import android.os.Bundle;

import android.support.v4.view.PagerAdapter;

import android.support.v4.view.ViewPager;

import android.support.v4.view.ViewPager.OnPageChangeListener;

import android.view.View;

import android.view.ViewGroup;

public class MainActivity extends Activity implements TabListener,

OnPageChangeListener {

private ActionBar actionBar;

private ViewPager viewPager;

private List<View> viewList;

private MainPageAdapter viewPagerAdapter;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

viewPager = (ViewPager) findViewById(R.id.view_pager);

actionBar = getActionBar();

actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

actionBar.setDisplayShowTitleEnabled(false);

actionBar.setDisplayShowHomeEnabled(true);

Tab tab = actionBar.newTab().setText("第一页").setTabListener(this);

actionBar.addTab(tab);

tab = actionBar.newTab().setText("第二页").setTabListener(this);

actionBar.addTab(tab);

tab = actionBar.newTab().setText("第三页").setTabListener(this);

actionBar.addTab(tab);

viewList = new ArrayList<View>();

View view1 = (View) View.inflate(this, R.layout.layout1, null);

View view2 = (View) View.inflate(this, R.layout.layout2, null);

View view3 = (View) View.inflate(this, R.layout.layout3, null);

viewList.add(view1);

viewList.add(view2);

viewList.add(view3);

viewPagerAdapter = new MainPageAdapter();

viewPager.setAdapter(viewPagerAdapter);

viewPager.setCurrentItem(0);

viewPager.setOnPageChangeListener(this);

}

@Override

public void onTabReselected(Tab tab, FragmentTransaction ft) {

}

@Override

public void onTabSelected(Tab tab, FragmentTransaction ft) {

viewPager.setCurrentItem(tab.getPosition());

}

@Override

public void onTabUnselected(Tab tab, FragmentTransaction ft) {

}

@Override

public void onPageScrollStateChanged(int arg0) {

}

@Override

public void onPageScrolled(int arg0, float arg1, int arg2) {

}

@Override

public void onPageSelected(int arg0) {

actionBar.getTabAt(arg0).select();

}

public class MainPageAdapter extends PagerAdapter {

@Override

public Object instantiateItem(ViewGroup container, int position) {

View view = viewList.get(position);

viewPager.addView(view);

return view;

}

@Override

public void destroyItem(ViewGroup container, int position, Object object) {

container.removeView(viewList.get(position));

}

@Override

public int getCount() {

return viewList.size();

}

@Override

public boolean isViewFromObject(View arg0, Object arg1) {

return arg0 == arg1;

}

}

}

<?xml version="1.0" encoding="utf-8"?>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

<android.support.v4.view.ViewPager

android:id="@+id/view_pager"

android:layout_width="fill_parent"

android:layout_height="fill_parent" />

</FrameLayout>

赞助本站

人工智能实验室

相关热词: actionbar viewpager

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港