我对Android活动有疑问。
如何锁定屏幕上的当前活动并阻止任何导航/开始新活动?
我有一个基于WebSocket通信系统的应用程序。在新的交易开始时,我需要等待获得任何通信结果(成功或错误),然后才能运行新活动或转到之前的活动。
但是如何在那里实施?我需要通用方法,谁能够拦截标准键的任何导航尝试以及用户代码的任何导航尝试。
感谢。
答案 0 :(得分:2)
实际上,我不认为这是可能的。
当然,您可以覆盖Activity的onBackPressed
方法,这样用户将无法导航回来。您还可以设置FullScreenMode以隐藏用户的状态栏。
但是,拦截Home键非常困难。它是由Android设计的,因此用户始终可以访问HomeScreen。
所以一般来说,我建议使用ProgressDialog
reference here,你甚至可以setCancelable(false)
来阻止它被“返回”解雇,但“主页“仍将最小化您的应用并返回主屏幕。