2017-01-16 3 views
1

2つのフラグメントを持つviewPagerを設定しようとしています。私は、Android StudioでサンプルAndroidの活動のようにFragmentPagerAdapterためv4のサポートライブラリを使用しています、これは、それがどのように見えるかです:私は私のカメラの断片のようなGoogleのCamera2例を実装しようとするためCamera2 in FragmentPagerAdapter

public class SectionsPagerAdapter extends FragmentPagerAdapter { 

    SectionsPagerAdapter(FragmentManager fm) { 
     super(fm); 
    } 

    @Override 
    public Fragment getItem(int position) { 

     switch (position){ 
      case 0: 
       return FirstFragment.newInstance(); 
      case 1: 
       return CameraFragment.newInstance(); 
      default: 
       return null; 
     } 
    } 

    @Override 
    public int getCount() { 
     // Show 2 total pages. 
     return 2; 
    } 

} 

私の問題が来ます。これらのフラグメントはネイティブフラグメントですが、PagerAdapterはサポート.v4.Fragmentsが必要です。

私はv13 FragmentPagerAdapterを使用しようとしましたが、これはv4.FragmentManagerを使用することができず、独自のFragmentManagerを持っていません。

CameraFragmentをv4フラグメントに変換しようとしましたが、v4サポートライブラリにコンパイルされないコードがあります。

どうすれば解決できますか?

+0

この問題を解決できましたか? – ryderd

+0

私はそれを別の方法で実装することに決めましたが、解決策が見つかったので、後でこの実装に戻ることにしました。 –

答えて

0

私は同じ問題を抱えていたので、この問題の解決策を見つけたと思います。私は経験豊富なAndroidデベロッパーではないことを覚えておいてください。私の解決策には欠陥があるかもしれませんが、これはあなたの役に立つかもしれません。 お客様のマイルは5月ごとにになります。

Android.app.FragmentAndroid.app.FragmentMangerandroid.support.v13.app.FragmentPagerAdapterを使用しています。 V4 Support Libraryは、この機能に関連する残りのインポートに使用されます。

インポート(S)

import android.app.Fragment; 
import android.support.v13.app.FragmentPagerAdapter; 
import android.app.FragmentManager; 
import android.support.v4.app.FragmentActivity; 
import android.support.v4.view.ViewPager; 

あなたのポストに示されているように私の他のフラグメントは、同じデザインに従ってください。

ノート

  1. 私はbuild.gradleファイルにcompile 'com.android.support:support-v13:25.3.1'ビルドの依存関係を追加しました。 the docsによると、これはこのライブラリの最新のビルド依存バージョンです。ビルド依存関係を追加する方法は、in the docsです。
  2. 私はあなたがネイティブandroid.app.Fragmentを使用している場合は、FragmentからViewPagerのために使用されますあなたのActivityを延長することをお勧めしますが、私のコードは、同様FragmentActivityから延びる一方で動作するように思われると信じています。