问题标签 [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.
android - TextView setText 在 ScheduledExecutorService runOnUiThread 中不起作用
代码 :
我想每 1 秒更新一次 TextView 中的文本,但这似乎只适用于第一次,以后的文本不会更新。
有谁知道是什么问题??
android - 套接字 IO runOnUiThread 不起作用
我在套接字 io 中遇到 runOnUiThread 问题。我使用这个库。我有一些事件的听众。如果我收到此事件,我会更改图像。但是当我得到事件图像时,我不明白为什么会这样。也许有人帮助或解释我做错了什么。提前致谢。这是我的代码
编辑!
套接字连接成功,我可以在日志中看到消息在线/离线。我也调试代码并且不显示错误。完整代码
}
android - 应用警报对话框中所需的功能后,如何关闭我的进度对话框?
我的片段中有一个链接,显示“单击以打开对话框”,单击它后,会弹出一个警告对话框,显示“您要更改视图吗?” 带有是和否符号。如果我单击“否”,则不会发生任何事情,并且对话框会按预期消失。但是,如果我单击“是”,如何调用函数来刷新我的视图,直到刷新我的视图才会显示进度对话框?到目前为止,这是我的代码,我不知道在哪里关闭进度对话框或确保刷新视图,有什么线索吗?:
android - 重复运行 runOnUiThread() 导致异常
(2016.3.15 更新)
上周我遇到了一个奇怪的问题,我想和你讨论一下。
问题场景:</p>
AppCompatActivity 中有一个 searchView。每当文本发生变化时,Activity 中的 Fragment 都会通过“ getSupportFragmentManager().beginTransaction().replace(R.id.fragment_layout, fragment).commit();
”替换。
在片段中,有一个名为 SearchThread 的线程,它将在onActivityCreated()
. 言归正传,里面有getActivity().runOnUiThread(new Runnable{...})
方法。不管“new Runnable()”里面是什么,当searchView的文本快速变化的时候都会出现NullPointerException,导致这个fragment频繁的重新建立。
日志猫:
但是,如果我使用 sendMessage(searchHandler.obtain...) 而不是 runOnUiThread,一切都会顺利!!
GymFragment.Java:</p>
搜索活动.Java:
解决方案:</p>
1) 注释掉"getActivity()...",改用注释掉的"sendMessage(searchhandler.obtain..)"。
2)在运行getActivity().runOnUiThread()之前,先判断getActivity()==null。
2016.3.14:
[一些有趣的事情:)]
- “runOnUiThread”的源代码
runOnUIThread(Runnable r)的源码:</p>
实际上,runOnUiThread 调用 mHandler.post(Runnable r)。
让我们看看 post(Runnable r) 中的内容:
而在getPostMessage(Runnable r)中:</p>
然后在Message.obtain()中:</p>
2.“sendMessage(Message msg)”源码:</p>
在这里我们可以看到,sendMessage(Message msg) 的实现几乎等同于 post(Runnable r) 的实现。差异可能与 getPostMessage(Runnable r) 有关。
所以,简而言之,当我同时执行时,实际导致正确执行 searchHandler.SendMessage(searchHandler.obtainMessage(0,str)),而导致 getActivity().runOnUiThread(new Runnable{...}) 异常的原因反复执行?非常感谢!
android - 如何停止间隔(1分钟)运行的处理程序?
我正在开发一个应用程序,在该应用程序中,我每隔一分钟将设备位置发送到服务器。我在这里使用 Handler 来安排我的任务。用户单击STOP按钮后,处理程序应停止执行。我无法做到这一点。请在下面找到我的代码。
停止任务代码:
我试过了stopService
,removeCallbacks
但没有用。谁能为此提供解决方案?
更新
这是** callAsynchronousTask()**
我两次发布数据。第一次是用户单击开始按钮,然后我启动计时器以每分钟执行一次。
android - 软键盘隐藏调用在 view.post() 中没有按预期工作,但在 runOnUIThread() 中工作正常
当我调用(从片段内部)将键盘隐藏在 runOnUiThread() 中时,键盘会隐藏,但是当我从 activity.getCurrentFocus().post() 内部执行相同操作时,键盘不会隐藏。
1)下面的代码有效
2) 但这不是
在哪里view = activity.getCurrentFocus();
android文档说以下内容:-
a) public final void runOnUIThread(Runnable action) - 在 UI 线程上运行指定的操作。如果当前线程是 UI 线程,则立即执行该操作。如果当前线程不是UI线程,则将动作发布到UI线程的事件队列中
b) public boolean post(Runnable action) - 将 Runnable 添加到消息队列中。runnable 将在用户界面线程上运行。
有人可以解释一下吗,在此先感谢!
android - 活动完成()时如何停止多个创建runOnUiThread()
我在我的活动中添加了这段代码,当按下完成活动时,我的主要活动是阻止所有用户界面,我不知道为什么会发生这种情况。
android - Android 未更新 UI 线程上的按钮背景颜色
我正在开发一个应用程序并尝试使用单击更新按钮背景颜色。我想做的是,
1)等待0.5秒检查答案是否正确。如果答案正确,将按钮颜色更改为绿色,否则将其更改为红色。
2) 按钮颜色变化后,再等待 0.5 秒,然后调用函数更新问题。
这是我的 onClick 方法,
所以它只是不改变按钮的背景颜色。其他一切工作正常。谁能告诉我我的错误在哪里?
感谢你们对我的帮助。:D
android - 线程中断后如何确保通过某个地方?
我为计划的 ui 上的动画更改图像创建了一个线程。按钮单击时会中断,并设置固定图像。但是如果runOnUiThread 中的setImage 在onClick 中的setImage 之后不小心发生了,那就是错误的图像。
这段代码中是否有任何方法可以确保在从 InterruptedException 返回后通过某个地方。(我不想在 ui 线程上有更多延迟)
请帮忙谢谢!
//一次点击
编辑:我按照建议重写了这部分。
//开始
// 结束点击
然后有时工作有时不工作,当“doInBackground”不在睡眠时不工作!它确实进入了 onCancel 但并没有真正取消,我用 isCanceled() 得到了错误记录图片如下