我有一个导航抽屉,在大多数情况下,当您点按抽屉时,会加载一个片段。
我想加载一个片段,该片段具有用片段滑动标签。 即
nav抽屉(活动)
--- TabFragments(片段)
------- Tab1(片段)
------- Tab2(片段)
我见过的大多数示例都展示了如何为活动添加滑动标签,有人可以指导如何为碎片添加滑动标签。
我实际上已经让它工作到了我有一个viewpager,而FragmentPagerAdapter使用这个问题中的答案设置:
How to put swipe tab views inside one of navigation drawer option
我可以轻扫片段,但是我想让工具栏顶部的标题标题,但不知道怎么做,因为我是从片段中做到这一点
答案 0 :(得分:1)
首先我使用frameLayout作为内容(片段),ID为:" container" 在抽屉项目中使用选择处理程序方法:
android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.container,MyFragment.newInstance()).commit();
MyFragment在其xml布局中包含ViewPager:
<android.support.design.widget.CoordinatorLayout 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"
tools:context=".activities.NewDogActivity"
android:id="@+id/coScroll">
<android.support.design.widget.AppBarLayout
android:id="@+id/appBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_gravity="bottom"
app:tabMode="scrollable" />
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
</android.support.v4.view.ViewPager>
</android.support.design.widget.CoordinatorLayout>
并在MyFragment
课程中:
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_viewshop, container, false);
appBarLayout = (AppBarLayout) view.findViewById(R.id.appBar);
TabLayout tabLayout = (TabLayout) view.findViewById(R.id.tabs);
ViewPager pager = (ViewPager) view.findViewById(R.id.view_pager);
View_PagerAdapter adp = new com.vinny.adapter.ViewShopPagerAdapter(getChildFragmentManager());
pager.setAdapter(adp);
tabLayout.setupWithViewPager(pager);