gpt4 book ai didi

java - 如何在Android中以纵向模式在Fragment中实现二维码扫描?

转载 作者:行者123 更新时间:2023-11-29 09:28:36 24 4
gpt4 key购买 nike

我正在开发一个应用程序,在这个应用程序中我必须实现 QR 码扫描器,我可以在 Zxing 库的帮助下轻松地在 Activity 中实现这个东西但是问题是扫描器应该在 fragment 中并且 fragment 添加在ViewPager 和我也想自定义扫描仪的 View 。

最佳答案

对于 Android Studio 用户

repositories {
maven {
url "https://jitpack.io"
}
}

compile 'com.journeyapps:zxing-android-embedded:3.2.0@aar'
compile 'com.google.zxing:core:3.2.1'

首先,您需要通过打开相机(扫描仪)来触发 Intent 。

Intent intent = new Intent("com.google.zxing.client.android.SCAN");                
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");

然后,如果在一个Fragment中被触发,那么写,否则你的请求代码会出错。

getActivity().startActivityForResult(intent, 0);

如果来自 Activity

startActivityForResult(intent, 0);

然后,它必须是一个 Activity,您需要扫描仪在其中捕获您的结果,我已捕获并因此显示在 Toast 中。

 public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contents = intent.getStringExtra("SCAN_RESULT");
String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
Toast.makeText(this,contents,Toast.LENGTH_LONG).show();
// Handle successful scan
} else if (resultCode == RESULT_CANCELED) {
// Handle cancel
}
}
}

最后,在 list 文件中对其进行索引,使用 Intent 过滤器使其能够识别其来源和功能

<activity android:name="com.journeyapps.barcodescanner.CaptureActivity"
android:clearTaskOnLaunch="true"
android:stateNotNeeded="true">
<intent-filter>
<action android:name="com.google.zxing.client.android.SCAN"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>

关于java - 如何在Android中以纵向模式在Fragment中实现二维码扫描?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35763784/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com