【问题标题】:A QR scanner inside of a FragmentFragment 内的 QR 扫描仪
【发布时间】:2012-07-19 10:12:14
【问题描述】:

我正在使用 ViewPager 在我的片段之间滑动。是否可以在 Fragment 中集成 QR 扫描仪(zxing 或任何其他),以便我可以从扫描仪视图滑动到另一个 Fragment,反之亦然?

据我所知,大多数 qr 扫描器都要求我使用扩展的 Activity 类并启动它以获得结果,在 onActivityResult 中处理它,这对我来说不是一个选项

【问题讨论】:

  • 快速搜索会发现您要查找的内容:stackoverflow.com/questions/4782543/…
  • 这不是我一直要求的,我知道如何集成zxing,问题是要使用它我必须启动单独的Activity,但我需要在Fragment中使用它跨度>
  • 这正是您要找的。接受的答案告诉您如何将“zxing”直接集成到您的代码中,而不是使用基于Intent 的方法,正如您所说,这不是一种选择。然后你可以在你的FragmentActivity 中使用它。另外,Intent 基于(使用onActivityResult)选项也可以在Fragment 中进行。您可以在 Fragment 中使用来自onActivityResult 的结果,毕竟每个Fragment 都需要一个父Activity
  • 想知道您是否找到了答案?我已经检查了该链接并阅读了接受的答案,它所解释的只是如何将 ZXing 与您的项目集成;它甚至没有提示如何将扫描仪专门集成到自定义片段中。除非我在这里遗漏了一些明显的东西?我花了几个小时试图让它在没有运气的片段中工作,使用 IntentIntegrator 等。它只会在全屏模式或扩展活动中显示。对此的任何帮助将不胜感激!
  • @svguerin3 :你有没有找到任何可以为你做这件事的库?过去几天我一直在寻找和尝试不同的事情,但直到现在都没有成功。

标签: android android-fragments zxing


【解决方案1】:

barcodefragmentlib 是您正在寻找的那个。它的wiki 向您展示了如何集成它(尽管在 wiki 出现之前我使用了不同的方式)。

但是在完全集成它并解决了我们商业应用程序的所有问题之后,我觉得在片段中放置一个 QR 扫描仪并使用 ViewPager 切换并不是一个好主意。这个想法和我提到的库的一些已知问题是:

  • 经常在二维码片段和其他片段之间切换会让你的应用卡顿,容易崩溃;
  • Fragment替换不像Activity那么容易处理,QR Fragment更糟糕;
  • 默认不支持纵向/横向扫描模式(与原ZXing lib相关)
  • 第一次打开二维码片段时,可能会在很短的时间内黑屏
  • 扫描仪无法在 Galaxy S4 或其他配备更高分辨率相机/显示器的新设备上正常工作

虽然上面提到的这些问题可以通过一定的努力来解决,但这确实是一种权衡。

【讨论】:

    猜你喜欢
    • 2021-09-02
    • 1970-01-01
    • 1970-01-01
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    相关资源
    最近更新 更多