【发布时间】:2022-04-12 17:50:19
【问题描述】:
我正在尝试使用 zxing 库实现 qr 扫描仪。为此,我在屏幕上添加了一个按钮,单击它,我将启动扫描仪,如下所示
Button(
onClick = {
val intentIntegrator = IntentIntegrator(context)
intentIntegrator.setPrompt(QrScanLabel)
intentIntegrator.setOrientationLocked(true)
intentIntegrator.initiateScan()
},
modifier = Modifier
.fillMaxWidth()
) {
Text(
text = QrScanLabel
)
}
但是,它启动了一个意图,期望 onActivityResult 方法返回结果。 Jetpack compose 使用rememberLauncherForActivityResult,如下所示
val intentLauncher = rememberLauncherForActivityResult(
contract = ActivityResultContracts.StartIntentSenderForResult()
) {
if (it.resultCode != RESULT_OK) {
return@rememberLauncherForActivityResult
}
...
}
但是我们如何在这里将两者整合在一起呢?
【问题讨论】:
标签: zxing android-jetpack-compose