2012-07-19 4 views
12

私のフラグメント間をスワイプするためにViewPagerを使用しています。 QRスキャナー(zxingなど)をフラグメント内に統合して、スキャナービューから別のフラグメントにスワイプすることができますか?その逆も可能ですか?私にはオプションではありません私の知る限り、QRスキャナーの大半は、onActivityResultでそれを処理する、拡張されたActivityクラスを使用すると、結果のためにそれを開始するために私を必要とフラグメント内のQRスキャナ

+0

すばやく検索すると、探しているものが表示されます。http://stackoverflow.com/questions/4782543/integration-zxing-library-directly-into-my-android-application –

+1

これは私が行ったことではありません私はzxingを統合する方法を知っている、問題はそれを使用することです私は別のアクティビティを開始する必要がありますが、私はそれをフラグメントで使用する必要があります –

+0

それはまさにあなたが探しているものです。受け入れられた答えは、あなたが言っているように、オプションではない 'Intent'ベースのアプローチを使う代わりに、' zxing 'をコードに直接統合する方法を教えてくれます。それで、あなたは 'フラグメント'、 'アクティビティ'、何でもそれを使うことができます。さらに、 'onActivityResult'を使って' Intent'を使って 'Fragment'を実行することも可能です。あなたのフラグメントで 'onActivityResult'の結果を使うことができます。結局のところ、' Fragment'ごとに親 'Activity'が必要です。 –

答えて

5

barcodefragmentlibがされあなたが探しているもの。そしてそのwikiはそれをどのように統合するかを示しています(私はwikiが出る前に別の方法を使っていましたが)。

しかし、商用アプリケーションの問題を完全に統合して解決した後は、QRスキャナをフラグメント内に置き、ViewPagerを使用してスイッチを切り替えるのは良い考えではありません。私には、このアイデアと述べたライブラリと既知の問題のいくつかは、次のとおりです。

  • よくQRフラグメントと他のフラグメントを切り替え、あなたのアプリがラグとクラッシュしやすくなります。
  • フラグメントの置換は、アクティビティと同じように扱いにくいので、QRフラグメントはさらに悪化します。
  • 肖像/水平スキャンモードの取り扱い(元ZXing libに関連)、デフォルトでは使用できません
  • 最初QRフラグメントを開くと、それは
  • 非常に短い時間のためにあなたの画面をブラックアウトかもしれスキャナがうまく機能していませんギャラクシーS4またはより高解像度のカメラ/ディスプレイを備えた他の新しいデバイス

これらの問題は特定の努力で解決できますが、実際にはトレードオフです。

関連する問題