TabLayout+ViewPager

来源:互联网 发布:python sys.exit 1 编辑:程序博客网 时间:2024/05/16 00:38

1.主页中放空帧布局

<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/container_content"    android:layout_width="match_parent"    android:layout_height="match_parent"   ></FrameLayout>

2.MainActivity中加载fragment,主要代码是

 setContentView(R.layout.activity_main);        FragmentManager fragmentManager = getSupportFragmentManager();        Fragment homeFragment = new HomeFragment();        fragmentManager.beginTransaction()                .replace(R.id.container_content, homeFragment).commit();

3.HomeFragment实现如下:

public class HomeFragment extends Fragment {    private TabLayout tb_layout;    private ViewPager viewPager;    private View rootview;    private static String title;    private String[] titles;    private List<Fragment> fragments = new ArrayList<>();    @Override    public View onCreateView(LayoutInflater inflater, ViewGroup container,            Bundle savedInstanceState) {        rootview = inflater.inflate(R.layout.content_main, null);        titles = getResources().getStringArray(R.array.tab_title);        /*for (int i = 0; i < titles.length-1; i++) {            fragments.add(TabPageFragment.getInstance(i));        }*/        Fragment firstTabFragment=new FirstTabFragment();        Fragment secondFragment=new SecondTabFragment();        fragments.add(firstTabFragment);        fragments.add(secondFragment);        tb_layout = (TabLayout)rootview. findViewById(R.id.tab_layout);        viewPager = (ViewPager)rootview. findViewById(R.id.viewpager);        tb_layout.setTabMode(TabLayout.MODE_SCROLLABLE);        viewPager.setOffscreenPageLimit(2);        MpageAdapter mpageAdapter = new MpageAdapter(getChildFragmentManager(), titles, fragments);        viewPager.setAdapter(mpageAdapter);        tb_layout.setupWithViewPager(viewPager);        return rootview;    }}

4.content_main布局包含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:id="@+id/content_frame"    android:layout_width="match_parent"    android:layout_height="match_parent"    app:layout_behavior="@string/appbar_scrolling_view_behavior"    tools:context="com.damily.damilyapp.MainActivity"    tools:showIn="@layout/app_bar_main"    android:orientation="vertical">    <android.support.design.widget.TabLayout        android:id="@+id/tab_layout"        android:layout_width="match_parent"        android:layout_height="wrap_content"        app:tabGravity="center"        app:tabIndicatorColor="#3A5fcd"        app:tabMode="scrollable"        app:tabSelectedTextColor="#3a5fcd"        app:tabTextColor="#ff000000"        >    </android.support.design.widget.TabLayout>    <android.support.v4.view.ViewPager        android:id="@+id/viewpager"        android:layout_width="match_parent"        android:layout_height="match_parent" /></LinearLayout>
0 0
原创粉丝点击