在我的 Xamarin.Android应用程序中,我正在使用蓝牙条形码扫描仪来扫描条形码。
到目前为止效果很好。我正在将AlertDialog与EditText一起使用。如果EditText具有焦点并且条形码扫描仪成功读取了条形码,则将 条形码键+“ \ n” 写入EditText。
问题:如果我不在要捕获条形码的EditText上,并且条形码扫描器成功扫描了条形码,它只会触发我当前活动中第一个可点击元素的点击或片段。
我可以用DispatchKeyEvent
来了解这一点:
public override bool DispatchKeyEvent(KeyEvent e)
{
var keycode = e.KeyCode; // Keycode.Unknown from Scanner
return base.DispatchKeyEvent(e);
}
扫描程序事件的键代码始终为KeyCode.Unknown
。
所以我的问题是:
KeyCode.Unknown
忽略KeyEvent。