1. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2. xmlns:tools="http://schemas.android.com/tools"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:background="#C5DAED"
  6. android:orientation="vertical" >
  7. <include layout="@layout/top" />
  8.  
  9. <com.viewpagerindicator.TabPageIndicator
  10. android:id="@+id/id_indicator"
  11. android:layout_width="fill_parent"
  12. android:layout_height="wrap_content"
  13. android:background="@android:color/transparent" />
  14. <android.support.v4.view.ViewPager
  15. android:id="@+id/id_viewpager"
  16. android:layout_width="fill_parent"
  17. android:layout_height="fill_parent" />
  18. </LinearLayout>
  1. package com.imooc.tab04;
  2. import android.os.Bundle;
  3. import android.support.v4.app.FragmentActivity;
  4. import android.support.v4.view.ViewPager;
  5. import android.view.Window;
  6. import com.viewpagerindicator.TabPageIndicator;
  7. public class MainActivity extends FragmentActivity {
  8. private ViewPager mViewPager;
  9. private TabPageIndicator mTabPageIndicator;
  10. private TabAdapter mAdapter;
  11. @Override
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. requestWindowFeature(Window.FEATURE_NO_TITLE);
  15. setContentView(R.layout.activity_main);
  16. initView();
  17. }
  18. private void initView() {
  19. mViewPager = (ViewPager) findViewById(R.id.id_viewpager);
  20. mTabPageIndicator = (TabPageIndicator) findViewById(R.id.id_indicator);
  21. mAdapter = new TabAdapter(getSupportFragmentManager());
  22. mViewPager.setAdapter(mAdapter);
  23. mTabPageIndicator.setViewPager(mViewPager, 0);
  24. }
  25. }
  1. import android.support.v4.app.Fragment;
  2. import android.support.v4.app.FragmentManager;
  3. import android.support.v4.app.FragmentPagerAdapter;
  4. public class TabAdapter extends FragmentPagerAdapter {
  5. public static String[] TITLES = new String[] { "课程", "问答", "求课", "学习", "计划" };
  6. public TabAdapter(FragmentManager fm) {
  7. super(fm);
  8. }
  9. @Override
  10. public Fragment getItem(int arg0) {
  11. TabFragment fragment = new TabFragment(arg0);
  12. return fragment;
  13. }
  14. @Override
  15. public int getCount() {
  16. return TITLES.length;
  17. }
  18. @Override
  19. public CharSequence getPageTitle(int position) {
  20. return TITLES[position];
  21. }
  22. }
  1. package com.imooc.tab04;
  2. import android.annotation.SuppressLint;
  3. import android.os.Bundle;
  4. import android.support.v4.app.Fragment;
  5. import android.view.LayoutInflater;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.TextView;
  9. @SuppressLint("ValidFragment")
  10. public class TabFragment extends Fragment {
  11. private int pos;
  12. @SuppressLint("ValidFragment")
  13. public TabFragment(int pos) {
  14. this.pos = pos;
  15. }
  16. @Override
  17. public View onCreateView(LayoutInflater inflater, ViewGroup container,
  18. Bundle savedInstanceState) {
  19. View view = inflater.inflate(R.layout.frag, container, false);
  20. TextView tv = (TextView) view.findViewById(R.id.id_tv);
  21. tv.setText(TabAdapter.TITLES[pos]);
  22. return view;
  23. }
  24. }

DEMO:http://download.csdn.net/detail/androidsj/9354439

69、ViewPagerIndicator+ViewPager实现Tab的更多相关文章

  1. Android开源框架ViewPageIndicator和ViewPager实现Tab导航

    前言: 关于使用ViewPageIndicator和ViewPager实现Tab导航,在开发社区里已经有一堆的博客对其进行了介绍,假设我还在这里写怎样去实现.那简直就是老生常谈,毫无新奇感,并且.我也 ...

  2. 无需SherlockActionbar的SlidingMenu使用详解(二)——向Fragment中添加ViewPager和Tab

    之前我们对大体框架有了一定的认识,现在我们来做Fragment界面,其实这里面和这个框架的关系就不大了,但因为有些同学对于在SlidingMenu中切换fragment还是有问题,所以我就在本篇进行详 ...

  3. ViewPagerIndicator+viewpager的简单使用,不需要导入Library包

    ViewPagerIndicator作为一款分页指标小部件兼容ViewPager,封装上做得非常不错,目前已为众多知名应用所使用. ViewPagerIndicator+viewpager实现如下效果 ...

  4. 使用ViewPager实现Tab

    一.效果演示及分析 我们直接看两幅图.如下:                   上两幅图实现的效果就是: (1)手指左右滑动时,中间的布局呈现不同的效果.而且下面的按钮也会做相应的改变. (2)我们 ...

  5. ViewPagerIndicator+viewpager指示器详解

    前几天学习了ViewPager作为引导页和Tab的使用方法.后来也有根据不同的使用情况改用Fragment作为Tab的情况,以及ViewPager结合FragmentPagerAdapter的使用.今 ...

  6. ViewPager与Tab结合使用

    我们有时候需要 标题页卡与ViewPager结合使用,其实原理也很简单. 不过工程中要引入android-support-design.jar 首先是布局文件 <android.support. ...

  7. FragmentPagerAdapter+ViewPager实现Tab切换效果

    1.Activity  加载布局文件,获取Viewpager控件   给ViewPager填充适配器. import android.app.ActionBar; import android.app ...

  8. 66、多种多样的App主界面Tab(1)------ ViewPager实现Tab

    <?xml version="1.0" encoding="utf-8"?> <!-- bottom.xml --> <Linea ...

  9. RadioGroup和ViewPager实现Tab

    Activity的布局文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...

随机推荐

  1. c++对象模型介绍

    http://www.cnblogs.com/skynet/p/3343726.html

  2. mysql去除内容中的换行和回车

    UPDATE tablename SET field = REPLACE(REPLACE(field, CHAR(10), ”), CHAR(13), ”); char(10): 换行符 char(1 ...

  3. sqlite 小刀 初试

    SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产 ...

  4. js+css简单效果(幕布,跑马灯)

    2.js普通的盒子,css的优先级 css的优先级 !important >>>>>  style 行内样式  >>>>> #id选择器 # ...

  5. Objective-C之定义函数

    Demo1.m 一个基础的函数定义 #import<Foundation/Foundation.h> //定义一个返回值为int类型的,名为max的函数.传入的参数为两个int型数据 in ...

  6. Android studio 使用心得(五)—代码混淆和破解apk

    这篇文章等是跟大家分享一在Android studio 进行代码混淆配置.之前大家在eclipse上也弄过代码混淆配置,其实一样,大家可以把之前在eclipse上的配置文件直接拿过来用.不管是.cfg ...

  7. pdo连接mysql操作方法

    PDO常用方法: PDO::query()主要用于有记录结果返回的操作(PDOStatement),特别是select操作. PDO::exec()主要是针对没有结果集合返回的操作.如insert,u ...

  8. PHP REST架构简单设计

    REST是什么? REST(Representational State Transfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性. REST的特点 ...

  9. numpy.ravel()/numpy.flatten()/numpy.squeeze()

    numpy.ravel(a, order='C') Return a flattened array numpy.chararray.flatten(order='C') Return a copy ...

  10. 跟着百度学PHP[15]-SESSION的应用/网站登陆案例完整案例

    先把几个应该要有的页面建立好.