在我的应用程序有时后退按钮的用户点击,并没有回应,于是他们再次点击回到前一个画面马上,而是他们去2-3屏幕背部。有时完全不在应用程序中。然而,只有一个屏幕显示时,这些后点击发生!有没有什么方法可以拦截这些,并忽略这些后续点击。也许观察它们的间距或它们出现的屏幕?有没有其他人有这个问题?检测后退按钮点击和忽略额外的点击
我的猜测是没有什么可以做,因为用户对后退按钮的最终控制权,但为什么没有安卓忽略额外的点击,因为它们都发生在同一页上,它甚至还没有说明切换?
在我的应用程序有时后退按钮的用户点击,并没有回应,于是他们再次点击回到前一个画面马上,而是他们去2-3屏幕背部。有时完全不在应用程序中。然而,只有一个屏幕显示时,这些后点击发生!有没有什么方法可以拦截这些,并忽略这些后续点击。也许观察它们的间距或它们出现的屏幕?有没有其他人有这个问题?检测后退按钮点击和忽略额外的点击
我的猜测是没有什么可以做,因为用户对后退按钮的最终控制权,但为什么没有安卓忽略额外的点击,因为它们都发生在同一页上,它甚至还没有说明切换?
你可以用下面的代码很容易赶上后退按钮,但你应该不会冒永远回应。你的用户界面线程被阻塞,这是根本错误的。
@Override
public void onBackPressed() {
// do something on back.
return;
}
也许我可以在这一点释放资源... –
你并不需要释放资源,如果你从后面堆栈弹出。唯一需要做的事情是关闭套接字和结束线程。我想如果你创建它们,删除临时文件。这些事情都不应该像你说的那样永远做下去。 – DeeV
http://stackoverflow.com/questions/2459848/android-prompt-user-to-save-changes-when-back-button-is-pressed – DeeV
这听起来像是你掩盖更大的问题虽然(即,为什么需要永远回应退出请求?)。 – DeeV
那么通常会显示一个ListView。它没有优化,因为我不确定什么时候这个请求(后退请求)被准确处理。你知道吗? –