在我的应用程序中,我有一些片段在树状结构中调用另一个片段。
我想让用户在一段时间内没有碰到任何东西(可能是30年代),将用户带回主页。
我考虑过在处理所有片段的活动中创建一个处理程序,每次用户与我认为他“活动”的东西进行交互时,我都会参与其他30多个处理程序。
如果处理程序到达30s,我将他带回Home片段。
所以,实际的问题是:我怎样才能为我的活动的每个元素获得一个监听器,这样我才能在点击时参与处理程序?
如果您需要我的一些代码,请让我发布。
答案 0 :(得分:3)
您可以将touchlistener实现到要添加片段的容器。触摸时重置您的处理程序等待计数30然后执行您的操作。
(frgamentcontainerView).setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_MOVE){
//set your handler
}
return true;
}
});
答案 1 :(得分:2)
Android中键,触摸或轨迹球事件的回调为onUserInteraction()
。在您的活动中覆盖此方法。它将捕获大多数常见的触摸事件&你可以在回调中使用你的处理程序。
@Override
public void onUserInteraction() {
super.onUserInteraction();
//Your Handler update code
}