如果在特定时间间隔内没有触摸屏幕或保持不活动状态,我希望做某事(调用函数)。如何在 Android 中实现这一点?
有什么建议么。
您可以在方法中向 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()
.
这假设您的活动一直处于活动状态(未暂停等)。在您的应用程序之外处理屏幕不活动似乎是不可能的。