android - 如何每秒自动刷新我的 Android Activity 中显示的数据

标签 android runnable android-intentservice android-timer

我需要每秒自动刷新 Activity 中显示的数据,我使用了 runnable、计时器等。这些工作完美,但几秒钟后 UI 很慢,有时没有响应。我读过有关 IntentService 的内容,但我认为在 IntentService 中使用无限循环不是一个好主意。有什么我遗漏的吗,请帮忙。

最佳答案

我会做这样的事情。

private Handler mRepeatHandler;
private Runnable mRepeatRunnable;
private final static int UPDATE_INTERVAL = 5000;
@Override
protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);

     mRepeatHandler = new Handler();
     mRepeatRunnable = new Runnable() {
          @Override
          public void run() {
               //Do something awesome

               mRepeatHandler.postDelayed(mRepeatRunnable, UPDATE_INTERVAL);
          };

     mRepeatHandler.postDelayed(mRepeatRunnable, UPDATE_INTERVAL);
}

@Override
protected void onDestroy() {
    super.onDestroy();

    mRepeatHandler.removeCallbacks(mRepeatRunnable);
}

关于android - 如何每秒自动刷新我的 Android Activity 中显示的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39109542/

相关文章:

android - 空 Intent 重新传递给服务 onStartCommand()

android - 如何在另一个 IntentService 中从一个 IntentService 接收值?

android - 能不能放一个DrawableShape或者Shape, "directly in"一个布局?

java - Android Firestore 将文档引用数组转换为 List<Pojo>

android - 在一个recyclerViews中实现多个 View

Android 简单 2 路 IM 问题(可运行)

java - 如何使线程崩溃或故意挂起线程?

android - 如何在 Android 上跟踪 "screen on"时间?

java - Android 的可运行代码不会停止

java - 多个服务可以同时并行执行工作吗