问题标签 [android-runonuithread]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1407 浏览

android - Android:'threadid=3:在执行长任务时对信号 3 做出反应

我正在Runtime.getRuntime().exec(cmd)我的应用程序内部执行命令。由于完成执行需要很长时间(几分钟),我把它放在一个线程中。但是使用线程方法,应用程序也会中途暂停,我看到这条消息:

以下是我正在使用的代码:

我在这里想念什么?如何防止我的应用因处理时间过长而被暂停?

注意:我知道还有其他方法,例如 AsyncTask 等,但我认为在这种情况下不会有任何不同。(或者会吗?)

0 投票
3 回答
12830 浏览

android - android runOnUiThread和java中简单代码的区别

我是 android 应用程序开发的初学者。我正在使用 android 中的线程。我已经阅读了有关runOnUiThread在主 UI 上运行代码的信息(如果我没记错的话?我猜。)。

我的问题是主 UI 上的普通代码和里面的代码有什么区别runOnIUThread

示例:1

示例:2

这两个例子有什么区别。请帮助我。你的回答对我来说将是一个新的学习。

0 投票
1 回答
214 浏览

android - 当它不是当前可见的活动时,可以运行 act.runOnUIThread 吗?

假设我mainActivity到处都有对它的引用。

我稍后会在应用程序中切换活动,但我不确定哪个当前“在顶部”以及是否是mainActivity.

mainActivity.runOnUIThread()当有另一个活动可见时调用是错误的吗?将来它会不会出现任何错误?还是我应该只在当前活动中调用它?

从技术上讲,有一个 UI 线程,所以......

0 投票
0 回答
614 浏览

android - 为什么 runOnUiThread 对我有用,而 Handler.post 没有

我有一个Fragment包含一个RecyclerView. 在其中Fragment,我从数据库加载一些数据,RecyclerView用它填充,然后想要滚动到其中的某个位置RecyclerView

为了在加载数据后在 UI 线程上执行滚动,我想使用一个处理程序:

但是,它永远不会向下滚动。

当我使用runOnUiThread时,一切正常:

无论我实例化mHandlerasnew Handler()还是 as new Handler(Looper.getMainLooper()),它都不起作用。

我的理解是,这new Handler(Looper.getMainLooper())将允许我在 UI 线程上执行任务,并且应该具有与runOnUiThread. 我的想法有什么问题?

更新

出于测试目的,我onDataAvailable从函数末尾调用onCreateView并加载了模拟数据。同样的效果:使用我自己的处理程序,它无法滚动。使用 runOnUiThread,它可以完美运行。

更有趣的是,我从 runnable 外部为处理程序和 runOnUiThread 打印了线程 ID。两次,代码都在线程 1 上运行,没有区别。

更新 2

如果我使用mRecyclerView.scrollToPosition而不是smoothScrollToPosition. 知道那可能是什么吗?

0 投票
0 回答
28 浏览

android-runonuithread - 按钮颜色已更改但未在 android 屏幕中更新

请参阅我已用于runOnUIThread(){}更新AsyncTask按钮颜色。更新这些按钮属性后,我可以读取它的颜色、名称等...在日志中,一切都正确显示,但这些属性没有在 UI 中更新。如何解决?

这是我的代码,

0 投票
1 回答
165 浏览

android - 这对 UI 线程有什么作用

在 AppCompatActivity 中只是想获得一些反馈。这个 Runnable 什么时候运行?

是否super.onBackPressed();发布在 Main ui 线程上,然后我的 Runnable 也发布到 Main ui 线程?我知道这是一个队列。这个对吗?

0 投票
4 回答
233 浏览

android - 尝试随着时间的推移设置值时,Android 视图不会更新

我得到了一个片段,它有一个名为的控件RingProgress,它只是一个根据给定百分比值填充自身的环。例如,如果我这样做:

这意味着现在将填充 20% 的环。

我正在尝试做的是在几秒钟内为填充的环设置动画。所以我试图做的是:

问题是直到时间到了才显示环的更新。例如,如果我将其设置为 5 秒,那么当片段加载时,环设置为 0,然后 5 秒内没有任何反应,然后环立即充满 100%。

如何正确启动此动画?

0 投票
2 回答
777 浏览

android - 在哪些情况下可以在 UI 线程上进行网络调用?

这个问题在大多数 Android 考试中提出,但我没有从任何 android 论坛得到任何答案。

提前致谢。

0 投票
0 回答
315 浏览

android - 单独线程中的 Android 数字时钟

我找到了一些关于 Tihomir RAdeff 的视频教程,其中介绍了如何开发一个简单的数字时钟作为自定义视图的一部分。但它是如何使用 Handle 和 Runnable 在 UI 线程中运行时钟绘图的示例。

这是开发应用程序使用无限重复绘制来解决内存使用问题和电池寿命保存的完美方式吗?

我想更好的方法是将所有繁重的代码带到一个单独的线程中。但我发现的所有示例都是基于 UI 线程使用情况。

请您发布任何有关使用单独线程生成数字时钟的示例,而不是作为小部件,而是作为活动部分。

0 投票
2 回答
1860 浏览

android - 删除回调在处理程序中不起作用

我有处理程序。我每 10 秒调用一次函数。代码运行良好,但我无法停止处理程序。这是我的源代码

我可以每 10 秒调用一次我的函数,但我无法停止处理程序。我能解决我的问题吗?