java - 如何实现,只有双击 Android 手机中给出的三个按钮中的任何一个才能退出应用程序?

标签 java android android-studio

著名游戏 pubg 刚刚在 Android 游戏应用程序中实现了一项新功能, 如果我们双击概览按钮、主页按钮或后退按钮,则只有它响应,

据我所知,通常双击/单击后退按钮会停止正在运行的应用程序,但只需单击主页或概览按钮即可返回主屏幕或最小化应用程序。

我在我的应用程序中需要相同的内容,用户必须双击概述、主页或退出按钮才能获得结果,就像如果用户想要进入主屏幕,那么用户必须双击主页按钮。

最佳答案

首先,在android studio中不建议使用双击,你有长按选项,这一定更好,here is how to implement it!

如果您的长按已被某些其他功能占用,或者您只是真的想要双击,则您几乎没有选择:

1) 添加 Gesture Listener

2)通过使用 boolean 值来检测双击,如下所示:

  • 添加 boolean 值 du_click = false;Handler du_handler;
  • 当单击 btn 时,检查 du_click 是否为 falsetrue
  • 如果是 true 则表示是双击
  • 如果是 false 则表示这不是双击,因此请将 du_click 设置为 true
  • 在一段时间(即 1 秒)后,使用处理程序 postDelayed() 方法将其设置回 false

如果您在使用 Handler 时遇到很多麻烦,您还可以通过在第一次单击后使用线程设置一个计时器来计数一段时间(即 1 秒)并在其之后检查是否存在来完成此操作是另一次点击(通过 boolean du_click ),但我认为 Handler 是你最好的选择(或使用 Gesture Listener )。

关于java - 如何实现,只有双击 Android 手机中给出的三个按钮中的任何一个才能退出应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57796289/

相关文章:

java - Socket.connect(Areess,timeout) 和 FTPClient.setSoTimeOu 之间的区别

android - 如何在我的 android 应用程序中禁用我的服务?

android - 无法捕获任务 android studio 的输入文件的快照

java - 本地广播接收器异常 : android. app.IntentReceiverLeaked?

android - 有没有办法用方法或代码来做 "setRotation()"?

android-studio - 如何显示 git diff 的间距?

java - 如何直接在应用内浏览器(Chrome 自定义选项卡)中打开外部链接,而不提示选择浏览器

java - 在 Rhino 中访问 java map 和列表作为 JavaScript 对象

java - 如何为具有泛型的接口(interface)创建对象

JavaFX : why wait cursor needs a new thread?