如何在自定义类的UI线程上运行Runable? “runOnUiThread(Runnable)”方法可以完成工作,但它是Activity的一部分。我想知道Application类是否支持类似的东西,因为它很容易获得它的一个实例。 我已经阅读了关于androidannotation框架中的注释“@UiTread”。这个注释是否也适用于自定义类?如何在自定义类的UI线程上运行Runnable
回答
您可以使用一个Handler或View.post(Runnable)
如果使用选项一:确保在UI线程上创建处理程序(或传入创建的循环),因为处理程序与“当前线程”关联 - 换句话说:它是线程创建于。 – 2013-03-21 22:18:32
实际上有一个技巧。创建它时,只需将主要活套交给处理程序即可。主循环是在UI线程中运行的主循环。 'mHandler = new Handler(Looper.getMainLooper());' – SimonSays 2013-03-21 22:25:45
我知道,这是我之前评论中括号内的部分。 ;)无论如何,只是认为值得指出OP。 – 2013-03-21 22:42:09
我建议你避免在UI线程上运行一个Runnable。关于我能想到做这件事的唯一原因是做某种计时器,它会在退出之前“睡眠”一段时间。一般来说,通过在Android框架之外使用Threads,Runnables等,可能会导致很多性能问题。并不是说他们不工作,但是你可能会再次试图让他们调试。
相反,要做“背景”工作,请使用AsyncTask或IntentService。
- 1. 执行可运行的参数在自定义线程类
- 2. 如何从UI线程运行特定类型的任务?
- 3. 如何访问正在运行的线程/ runnable?
- 4. 如何在runnable上运行Textview
- 5. 在UI线程上运行代码
- 6. Observable仍然在UI线程上运行
- 7. 新线程运行的UI线程
- 8. UI线程在android中运行异步类之前运行
- 9. 确保在ui线程上运行异步线程
- 10. 运行多个UI线程
- 11. 如何从使用runnable接口的类更新UI上的TextView?
- 12. 在PySpark中运行自定义Java类
- 13. 线程名称与执行Runnable和扩展线程类
- 14. 线程在自定义线程上锁定python
- 15. 如何做我自己的自定义运行时错误类?
- 16. phpBB:如何自定义UI
- 17. 如何确定线程UI线程
- 18. 如何在运行时自定义XML中定义的自定义drawable?
- 19. 如何在Rust中的自定义单线程迭代器上并行`映射(...)`?
- 20. 如何从Runnable更新UI?
- 21. 运行自定义方法的主线程
- 22. System.Windows.Forms.Timer是否在与UI不同的线程上运行?
- 23. WebView的loadUrl方法是否在UI线程上运行?
- 24. 在UI线程问题上运行的android webviewclient
- 25. 同步方法是否在UI线程(Android)的不同线程上运行?
- 26. 线程是否可运行?或上课?如何在后台运行线程?
- 27. 在线程上运行NSTimer
- 28. 在UI线程中运行的服务中是否可运行
- 29. 如何阻止UI线程从另一个线程或强制一个窗体在UI线程内运行
- 30. 在销毁应用程序后运行自定义线程中的自定义服务
请问为什么你不使用AsyncTask,如果你需要从另一个类更新你的主UI线程上的东西? – Droidman 2013-03-21 22:43:03