2016-04-11 15 views
0

引き出しアイテムをタップするとほとんどの場合フラグメントを読み込むナビゲーションドロワーがあります。フラグメント内のタブをスワイプ

フラグメントにスワイプタブが付いているフラグメントをロードしたいとします。

すなわちNAV引出し(活性)

--- TabFragments(断片)

------- Tab1を(断片)

------- TAB2(フラグメント)

私が見たほとんどの例では、スワイプタブをアクティビティに追加する方法を示していますが、誰かがフラグメントに対してこれを行う方法を教えてください。

私はviewpagerを持ってwher私は実際にそれがポイントに働いてしまっている、とFragmentPagerAdapterはこの質問に答えを使用して設定します。

How to put swipe tab views inside one of navigation drawer option

私は私がしたいしかし、断片を通じてスワイプすることができますツールバーの上部にタブタイトルがありますが、これを行う方法が分からない場合

+1

私ができる最善のは、このサンプルを見せている、それは昔の私にとって本当に便利でした! https://github.com/TheLittleNaruto/SupportDesignExample –

+0

viewpagerを含むフラグメントが必要です。それを処理します。 –

+0

@bryancはいviewpagerがメインフラグメントに入り、スワイプすると子フラグメントが変更されます – raklos

答えて

1

最初に、ID: "container"のコンテンツ(フラグメント)にframeLayoutを使用しました 引き出しアイテム選択ハンドラメソッド使用:

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); 
関連する問題