java - Android - Thread.sleep 和 Handler.postDelayed() 卡住动画 UI 元素

标签 java android

在我的 Activity 中,我的应用程序通过 Http 连接从网站下载内容列表。在屏幕上显示此列表之前,我有一个 Loading... TextView,其中有一个旋转的 ProgressBar,表示当前正在下载数据。

我注意到,如果我在从网络获取数据的过程中执行任何类型的 Thread.sleep(),它会卡住旋转的 ProgressBar

即使我将方法放在它自己的 Handler Runnable 中以便它在它自己的线程上,动画卡住仍然发生。

我能做些什么吗?

最佳答案

是的,使用 AsyncTask .

Handler 通常附加到 UI 线程。向其发送 Runnable 不会改变它们将在 UI 线程上运行的事实。

关于java - Android - Thread.sleep 和 Handler.postDelayed() 卡住动画 UI 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7851598/

相关文章:

android - 在 QML 中访问 Android 系统图像

android - 删除索引无法正常工作的SQlite Android

java - Spring JPA 和 Hibernate 的 JPQL 查询错误

java - StringConcatFactory 中的异常 - Java 9

java - 创建对象后注入(inject)属性

java - 比较两个对象中的值时出错

java - 如何在java中编写firebase云函数

android - Firebase Cloud Function 向相同的设备发送多个相同的通知

android - Location 在 Android 6.0.1 中返回 0.0,但在 4.0.1 中有效

android - PhoneGap 开始使用 Android "Missing one of the following"