相关疑难解决方法(0)

有时间延迟重复一项任务?

我的代码中有一个变量,说它是"状态".

我想根据此变量值在应用程序中显示一些文本.这必须在特定的时间延迟下完成.

就像是,

  • 检查状态变量值

  • 显示一些文字

  • 等待10秒钟

  • 检查状态变量值

  • 显示一些文字

  • 等待15秒

等等.时间延迟可能会有所不同,一旦显示文本就会设置.

我试过Thread.sleep(time delay)但失败了.有没有更好的方法来完成这项工作?

android android-thread

202
推荐指数
7
解决办法
16万
查看次数

Android:正确的方法将消息从后台线程传递到UI线程?

我一直在阅读很多关于线程,处理程序,loopers等的内容,我很困惑.在我的应用程序中,我希望第一个Activity启动后台工作程序.此后台工作程序将不断地从TCP套接字请求数据,并且(希望)在数据到达时将新信息发布到UI线程.如果用户转换到新的Activity,则后台需要继续执行该操作,但只向UI线程发送不同的消息,以便相应地更新新布局.

这是我到目前为止...这是我的主要活动文件

public class MyTCPTest extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // set the layout
        setContentView(R.layout.main);
        // create a handler to handle messages from bg thread
        Handler handler = new Handler();

        BgWorkerThread bgw = new BgWorkerThread();
        bgw.start();
 }
Run Code Online (Sandbox Code Playgroud)

在另一个文件中我定义我的后台工作线程如下...

public class BgWorkerThread extends Thread {    
@Override
public void run(){

    while(true)
    {
        try {
        // simulate a delay (send request for data, receive and interpret response) 
        sleep(1000);

                    // How do I send data here to the UI …
Run Code Online (Sandbox Code Playgroud)

multithreading android

5
推荐指数
1
解决办法
4738
查看次数

标签 统计

android ×2

android-thread ×1

multithreading ×1