zoukankan      html  css  js  c++  java
  • 69、ViewPagerIndicator+ViewPager实现Tab

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

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

  • 相关阅读:
    server version for the right syntax to use near 'USING BTREE 数据库文件版本不合导致的错误
    百度网盘,FTP上传异常、上传失败的解决办法
    zencart产品属性dropmenu select只有一个选择项时自动变成radio单选的解决办法
    火车采集小结
    dedecms织梦移站后替换数据库中文件路径命令
    dedecms织梦网站本地迁移到服务器后,后台更新栏目文档提示模板文件不存在,无法解析文档!的解决办法
    Addthis分享插件后url乱码的解决办法
    dedecms织梦做中英文(多语言)网站步骤详解
    递归的参数和返回值
    【图论算法】Dijkstra&BFS
  • 原文地址:https://www.cnblogs.com/androidsj/p/5047473.html
Copyright © 2011-2022 走看看