我目前正在努力获得我的心理学文凭,我想写一些关于智能手机不同类型键盘的文章。为了研究这个领域,我需要一个测量时间的工具。由于我是 Android 编程新手,我的朋友正在帮助我,但我们陷入了困境。这是我们需要的,也是我们尝试过的。我真的很感激任何帮助=)
我们需要一种在 IME 中的用户输入开始之前和 IME 中的用户输入结束之后调用函数的方法。(我们只需要这个来记录时间,我们不需要实际的输入。)我们还需要在用户输入之前调用一个函数来选择自动更正开始/结束。
我们需要对各种 IME 执行此操作,尤其是 Swype、Swiftkey 等键盘(尽管其中一个工作就足够了)
我们尝试了:
通过 addTextChangedListener 的 TextWatcher - 随机调用 beforeTextChanged/afterTextChanged 似乎是不可靠的,即使在一个手势内或在一个手势内多次
子类化 EditText 实现 OnTouchListener,使用 onTouch() - 使用 swype 时似乎根本没有被调用,所以要么我们做错了,要么 ime/swpye 消耗了这些事件,也用 onKeyPreIme 尝试过,也没有被调用
理想的情况是: 一种在“触摸”事件被传递给 IME 以通过 System.currentTimeMillis() 记录当前时间之前捕获“触摸”事件的方法,在手势结束后相同的“之后”,即当手指从显示器上松开时
我们不需要实际的代码,指向正确命令/文档/小部件的链接会很不错。
如果你曾经在柏林并且需要一个地方来……获取饼干,你会得到额外的饼干 :)