2017-06-25 11 views
1

私のアプリにカメラを組み込むためにcamera2パッケージを使いたいと思っています。問題は私がフラグメントに収める必要があるときに発生します。ビューページ内に3つのフラグメントがあり、それらをスワイプすることができます。私は最後の断片を、スナップチャットと同様の(アプリが開かれているときのみ)常にオンになっているカメラアプリにしたい。私はこれをどうやって実行しますか?私はカメラ2をスタンドアロンで動作させることができましたが、フラグメント内では動作しませんでした。おかげCamera2をフラグメントに配置する

主な活動:

public class MainActivity extends FragmentActivity { 
    ViewPager mViewPager; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     mViewPager = (ViewPager) findViewById(R.id.pager); 
     PagerAdapter pAdapter = new PagerAdapter(getSupportFragmentManager()); 
     mViewPager.setAdapter(pAdapter); 
     setCurrentItem(1, false); 
    } 

    // This method is called ChatFragment.java and uses viewPager to smoothScroll to the desired fragment 
    public void setCurrentItem (int item, boolean smoothScroll) { 
     mViewPager.setCurrentItem(item, smoothScroll); 
    } 
} 

PagerAdapter:

public class PagerAdapter extends FragmentPagerAdapter { 

    public PagerAdapter(FragmentManager fm) { 
     super(fm); 

    } 
    @Override 
    public Fragment getItem(int arg0) { 
     switch (arg0) { 
      case 0: 
       return new MessageFragment(); 
      case 1: 
       return new ChatFragment(); 
      case 2: 
       return new CameraFragment(); 
      default: 
       break; 
     } 
     return null; 
    } 
    @Override 
    public int getCount() { 
     return 3; 
    } 
} 

カメラの断片:それは良い出発点になるよう

public class CameraFragment extends Fragment { 
    @Nullable 
    @Override 
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
     return inflater.inflate(R.layout.camera_fragment_layout, container, false); 
    } 
} 
+0

何を試しましたか?あなたはどんな正確な問題に直面していますか? –

答えて

0

グーグルCamera2Basicの例では、フラグメントを使用しています。 https://github.com/googlesamples/android-Camera2Basic

簡単な方法について最初に学ぶ価値のある既知の問題があるので、問題ログと最近のCamera2タグ付き質問をご覧ください。

関連する問題