0

如果在特定时间间隔内没有触摸屏幕或保持不活动状态,我希望做某事(调用函数)。如何在 Android 中实现这一点?

有什么建议么。

4

1 回答 1

1

您可以在方法中向 UI 线程的处理程序发送延迟消息onResume()

handler.sendEmptyMessageDelayed(SCREEN_INACTIVE_MSG, DELAY_MILIS);

然后,在 onTouchEvent 中删除消息并再次插入:

handler.removeMessages(SCREEN_INACTIVE_MSG);
handler.sendEmptyMessageDelayed(SCREEN_INACTIVE_MSG, DELAY_MILIS);

在您的处理程序中,覆盖handleMessage()方法来处理消息:

public void handleMessage (Message msg) {
    switch(msg.what) {
        case SCREEN_INACTIVE_MSG:
            handleIdleScreenMetohd();
            break;
    }
}

此外,从onPause().

这假设您的活动一直处于活动状态(未暂停等)。在您的应用程序之外处理屏幕不活动似乎是不可能的。

于 2012-04-25T12:38:06.093 回答