【发布时间】:2013-10-25 21:48:50
【问题描述】:
嗨,在我的 android 应用程序中,我想在用户交互时隐藏操作栏,并在用户停止交互一段时间后再次显示它。现在我已经有了隐藏操作栏的代码:
mViewPager.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
getActionBar().hide();
return false;
}
});
我只是在主视图中添加了一个 onTouchListener
但我不知道如何实现getActionBar.show(); 方法。我如何确定用户是否在 2 秒内没有进行交互,从而实现 getActionBar().show();?
提前谢谢...
编辑:
protected String doInBackground(String... params) {
// TODO Auto-generated method stub
SystemClock.sleep(3000);
if (isCancelled()) {
break;
}
return null;
}
此代码出错。 break can only be used inside loop or switch。 onCancelled()如何实现
【问题讨论】:
-
不互动是指完全不触摸屏幕吗?
-
是的,我就是这个意思。
-
您可以设置一个 AsyncTask,在显示 ActionBar 之前在其中设置一个睡眠,如果用户触摸其他任何内容,则取消该任务。请参阅此处以取消任务stackoverflow.com/a/10882600/993600 我会在睡眠之后和显示 ActionBar 之前进行 isCancelled() 检查
-
我应该使用
SystemClock还是Thread.sleep(我猜是SystemClock) -
我不是特别确定,以前没用过。我只是在谷歌上看看人们说哪个最好用。
标签: android android-actionbar show user-interaction