TabLayout与ViewPager组合实现tab导航

来源:互联网 发布:网络协议栈是什么 编辑:程序博客网 时间:2024/05/17 02:21
   因为TabLayout是在android.support.design包下面,所以需要引入android.support.design这个包ViewPager是在android.support.v4这个包下面,所以需要引入这个包。我在android studio 下面撸码。在写Viewpger的adapter的时候发现在android.app.Activity;这个包下面的Activtiy无法获得getSupportFragmentManager()而在
android.support.v7.app.AppCompatActivity;这个包下面可以获得getSupportFragmentManager()可以获得,或者让Activity继承FragmentActivtiy也可以获得getSupportFragmentManager()这个方法。 
package com.example.huang.lwy;import android.app.Activity;import android.os.Bundle;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;public class MainActivity extends AppCompatActivity {private TabLayout tabLayout;    private ViewPager viewPager;    private String[] titles=new String[]{"title1","title2"};    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.content_main);        initView();    }    private void initView() {        tabLayout = (TabLayout) findViewById(R.id.id_tabLayout);        viewPager = (ViewPager) findViewById(R.id.id_viewPager);        viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {            @Override            public Fragment getItem(int position) {                return new FestivalCategoryFragment();            }            @Override            public int getCount() {                return titles.length;            }            @Override            public CharSequence getPageTitle(int position) {//获得ViewPager标题                return titles[position];            }        });        tabLayout.setupWithViewPager(viewPager);//通过这个方法让TabLayout和ViewPager联系起来    }    }

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    app:layout_behavior="@string/appbar_scrolling_view_behavior"    tools:context="com.example.huang.lwy.MainActivity"    android:orientation="vertical"    >   <android.support.design.widget.TabLayout       android:id="@+id/id_tabLayout"       android:layout_width="match_parent"       android:layout_height="wrap_content"        app:tabGravity="fill"       android:background="#ffffff"       app:tabMode="fixed"       app:tabTextColor="#000000"       app:tabIndicatorColor="@color/main_color"       app:tabSelectedTextColor="@color/main_color"       >   </android.support.design.widget.TabLayout>    <android.support.v4.view.ViewPager        android:id="@+id/id_viewPager"        android:layout_width="match_parent"        android:layout_height="0dp"        android:layout_weight="1"          ></android.support.v4.view.ViewPager></LinearLayout>




1 0
原创粉丝点击