1.硬件扫描二维码登录

参考Android 无 EditText 情况下接受扫码枪扫描数据

需求:硬件设备有二维码读取器,我们展示二维码,可以根据二维码信息,进行下一步操作

因为现有扫码设备,在扫码后就会在输入框(EditText)显示正确的扫码信息

选择方案:不使用EditText

class MainActivity : AppCompatActivity() {    var barcode = ""    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)    }    override fun dispatchKeyEvent(event: KeyEvent?): Boolean {        if (event?.action == KeyEvent.ACTION_DOWN) {            val pressedKey = event.unicodeChar.toChar()            //会输出单个的字符            barcode += pressedKey        }        if (event?.action == KeyEvent.ACTION_DOWN && event.keyCode == KeyEvent.KEYCODE_ENTER) {            Toast.makeText(this, "barcode=$barcode", Toast.LENGTH_LONG).show()            //TODO 全部输入完成 进行后续操作            barcode =""        }        return super.dispatchKeyEvent(event)    }}

注意:

1.在使用时需要使用.trim()去空,以免遇到问题

2.扫码会触发点击事件,需注意

2.实现连续点击

参考文章
https://www.cnblogs.com/tangZH/p/9832171.html

object MultipleClickUtils {    private const val counts = 4    private const val duration = 3 * 1000L    private val mHits = LongArray(counts)    fun checkMultipleClick(onFinish: () -> Unit) {        System.arraycopy(mHits, 1, mHits, 0, mHits.size - 1)        mHits[mHits.size - 1] = SystemClock.uptimeMillis()        if (mHits[0] >= SystemClock.uptimeMillis() - duration) {            //完成连续counts点击            onFinish()        }    }}

arraycopy的方法理解


arraycopy

更多相关文章

  1. Android(安卓)实现ListView的点击变色的实例
  2. Android(安卓)实现点击两次BACK键退出应用
  3. ActivityGroup中切换Activity
  4. Android(安卓)获取 H5中的按钮,点击
  5. Android中点击文字打开QQ对话
  6. 环境搭建
  7. AS升级到3.1.1之后【ZXingScannerView 二维码扫描】error: resou
  8. Android(安卓)zxing 二维码扫描和生成方法(简单版)
  9. android的popupwindow点击返回按钮关闭

随机推荐

  1. Android的事件转递机制
  2. Android实现三级联动下拉框 下拉列表spin
  3. Android(安卓)dumpstate 工具解析
  4. listview自定义背景以及item自定义背景
  5. Android权威编程指南读书笔记(1-2章)
  6. android客户端程序访问服务器端webservic
  7. 《Android开发从零开始》――10. LinearL
  8. android 实现定时器
  9. Deepin Android(安卓)Studio 修改默认源
  10. Android:使用ViewPager实现左右滑动切换图