在我的应用程序中,我正在上传一些可能需要几分钟的文件。我正在考虑一种通过在我的自定义标题栏中添加进度条来通知用户被动进行的活动的方法。我想要做的是让每个使用自定义标题的活动都与进度条一起出现,直到线程完成并执行回调,这将使进度条不可见。这样的事情可以完成吗?
似乎使这不可能的是,如果用户在加载视图的活动中,线程完成回调将不得不操纵加载的视图资源以禁用似乎不可行的进度条。是否有任何建议来完成此或替代解决方案,以保持全局和被动地指示后台发生的事情?
在我的应用程序中,我正在上传一些可能需要几分钟的文件。我正在考虑一种通过在我的自定义标题栏中添加进度条来通知用户被动进行的活动的方法。我想要做的是让每个使用自定义标题的活动都与进度条一起出现,直到线程完成并执行回调,这将使进度条不可见。这样的事情可以完成吗?
似乎使这不可能的是,如果用户在加载视图的活动中,线程完成回调将不得不操纵加载的视图资源以禁用似乎不可行的进度条。是否有任何建议来完成此或替代解决方案,以保持全局和被动地指示后台发生的事情?
您可以使用服务来实现这一点。服务
基本上它是如何工作的,是在创建活动时绑定到每个活动中的服务。您使用此服务来启动您的上传方法。
当您绑定到服务时,您会传递一个处理程序,然后使用该处理程序在该特定活动中更新您的 UI。该服务永远不会直接影响 UI(它将在单独的线程上运行),而是处理程序将消息传递回 UI 线程,其中包含 Bundle 中的数据,例如上传进度,或表示已完成的布尔值。