Android 当某些函数正在运行时,如何使应用程序不可聚焦?

Android 当某些函数正在运行时,如何使应用程序不可聚焦?,android,multithreading,Android,Multithreading,我的应用程序中有一个按钮。当我点击按钮时,我正在使用线程启动一些函数。当线程运行时,我不希望任何视图获得焦点(也包括选项卡)。在线程完成工作之前,如何使整个应用程序不可聚焦/不可接触?您应该显示一个。如果您不这样做,用户会认为您的应用程序已冻结。您可以使用setCancelabel(false)方法来阻止用户关闭对话框。您应该显示一个对话框。如果您不这样做,用户会认为您的应用程序已冻结。您可以使用setCancelabel(false)方法来防止用户关闭对话框。线程启动时我使用进度条,线程完成时

我的应用程序中有一个按钮。当我点击按钮时,我正在使用线程启动一些函数。当线程运行时,我不希望任何视图获得焦点(也包括选项卡)。在线程完成工作之前,如何使整个应用程序不可聚焦/不可接触?

您应该显示一个。如果您不这样做,用户会认为您的应用程序已冻结。您可以使用
setCancelabel(false)
方法来阻止用户关闭对话框。

您应该显示一个对话框。如果您不这样做,用户会认为您的应用程序已冻结。您可以使用
setCancelabel(false)
方法来防止用户关闭对话框。

线程启动时我使用进度条,线程完成时停止此进度条。但还有其他按钮是可以触摸的。我们能用progressbar做些什么使视图不可聚焦吗?还是只有progressdialog才有可能?嗯。。。你能做到的。。。但我不推荐。你可以做的是创建一个透明的覆盖视图,并将其置于活动内容之上(它将获得焦点,并且不允许用户与应用程序交互)。另外,覆盖
onKeyDown
onkeydup
以防止用户按下后退键。再一次:尽量避免这种技术。我在线程启动时使用进度条,在线程完成时停止进度条。但还有其他按钮是可以触摸的。我们能用progressbar做些什么使视图不可聚焦吗?还是只有progressdialog才有可能?嗯。。。你能做到的。。。但我不推荐。你可以做的是创建一个透明的覆盖视图,并将其置于活动内容之上(它将获得焦点,并且不允许用户与应用程序交互)。另外,覆盖
onKeyDown
onkeydup
以防止用户按下后退键。再次强调:尽量避免使用此类技术。