首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android:检测用户不活动/检测(软键盘)键盘输入

问Android:检测用户不活动/检测(软键盘)键盘输入
EN

Stack Overflow用户
提问于 2011-01-14 10:36:02
回答 1查看 3.5K关注 0票数 10

我想在我的Android应用程序中检测到“用户不活跃”。更准确地说:我想检测用户是否与我的应用程序进行过任何交互(触摸屏幕、滚动、输入文本.)一段特定的时间。从技术上讲,我使用的计时器是在每个(用户)交互上重新设置的。

在我的活动中,我重写了onUserInteraction方法来检测像滚动、触摸屏幕这样的交互。

代码语言:javascript
复制
@Override
public void onUserInteraction(){
    resetInactiveTimer();
}

不幸的是,当用户与软键盘交互时,不会调用onUserInteraction。我认为原因是,软键盘不是我活动的一部分。

对于我的应用程序中的编辑文本,我使用TextWatcher和onTextChanged方法,这很好。但我的应用程序还包含一个加载任意网页的WebView。当然,有些网页可能包含输入字段,我不知道如何检测用户是否与软键盘交互来编辑这些文本字段。

EN

回答 1

Stack Overflow用户

发布于 2011-05-08 16:31:45

还对这个感兴趣吗?

您的活动实现了KeyEvent.Callback,因此您可以重写onKeyDown。

代码语言:javascript
复制
@Override
public boolean onKeyDown (int keyCode, KeyEvent event) {
    resetInactiveTimer();
    return false;
}

或者,(在最常见的情况下)如果在EditText或类似的情况下按下光标键,则需要实现OnKeyListener并使用onKey方法调用resetInactiveTimer();

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4690147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档