从Edittext自动获取文本的不同方式

Different ways to get text automatically from Edittext

由于我使用的是扫描仪,在将条形码扫描到 edittext 后,我​​需要自动从 edittext 中获取文本,并从本地数据库中检查该条形码的记录。

我知道 addTextChangedListener 可以自动从 edittext 中获取文本。但也有一些问题,比如它在扫描时检查条码的每个字符,而不是检查本地数据库中的条码字符串。

您可以使用 Handler 及其方法 postDelayed(Runnable r, long delayMillis)removeCallbacks(Runnable r).

在您的 TextWatcher invoke removeCallbacks(...) in order to remove any previous Runnable and invoke postDelayed(...) with a little delay and a Runnable 中将检查条形码字符串。 因此,您可以在最后一位数字发送到 EditText 后的几毫秒内完成在数据库中的搜索。

此外,您的扫描器可能会在条形码末尾发送一个特殊符号。所以阅读它的文档。可能你不需要Handler,但你需要等待那个特殊符号