2016-04-28 53 views
-1

这是一个简单的代码来理解可运行。我试过但没有工作。你们可以帮我请,这是我的代码android实现runnable不工作?

public class Autostart extends activity implements Runnable { 
@override 
public void run (){ 
System.out.println ("message"); 
} 
} 
} 

这个,如果你使用的是活动不打印任何声明

+0

你在调用run()吗?它不自动调用自身 – Blackbelt

+0

然后如何自动运行 –

+0

为什么它应该自动运行? – Blackbelt

回答

1

,你需要编写的内部活动的生命周期方法的代码。在创建活动时调用onCreate()。因此,在这里启动您的Runnable将是正确的方式。

@Override 
public void onCreate(Bundle savedInstanceState) { 

    Handler handler = new Handler(); 

    final Runnable r = new Runnable() { 
     public void run() { 
     System.out.println ("message");  
     } 
    }; 

    handler.postDelayed(r, 1000); 
} 
+0

如何使用实现可运行? –

1

您必须创建一个Thread对象并使用该对象调用start()。

Thread t = new Thread(this); 
t.start(); 

或刚使用处理器

final Handler handler = new Handler(); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       // Do Something here 
      } 
     }, 5000); 
+0

如何使用可运行的实现? –

0

您可以使用下面的代码规则的时间间隔后打印的值

public void callAsynchronousTask() { 
    final Handler handler = new Handler(); 
    timer = new Timer(); 
    TimerTask doAsynchronousTask = new TimerTask() { 
     @Override 
     public void run() { 
      handler.post(new Runnable() { 
       public void run() { 
        try { 

         Log.e("on print timee", your value); 
        } catch (Exception e) { 
         // TODO Auto-generated catch block 
        } 
       } 
      }); 
     } 
    }; 
    timer.schedule(doAsynchronousTask, 0, 1000); // will execute after 1 sec 
} 

希望这将帮助你