Zxing条码扫描器连续扫描问题



我正在使用Zxing条形码扫描仪和Xamarin表单中的Rg Popup页面。整个想法是,当相机捕获条形码时,它会显示一个弹出窗口。问题是我想等待用户关闭弹出窗口,然后再再次扫描。现在,如果我将相机朝向条形码,它会一直显示多个警报。

public async void Scan(Result result)
{
//random linq to get product
if (product != null)
{
await PopupNavigation.PushAsync(new DisplayDialog(product));
}          
}

用户关闭窗口时的方法

private async void Button_OnClicked(object sender, EventArgs e)
{
await PopupNavigation.RemovePageAsync(this);
}

我尝试使用标志停止扫描并将"扫描"或"正在分析"设置为false,但没有工作。有什么想法吗?谢谢!

使用布尔值来控制流量

bool popup = false;
public async void Scan(Result result)
{
if (popup) return;
//random linq to get product
if (product != null)
{
popup = true;
await PopupNavigation.PushAsync(new DisplayDialog(product));
}          
}

然后,每当弹出窗口关闭时,将popup标志重置为false