安排对方法的调用? [复制]
Posted
技术标签:
【中文标题】安排对方法的调用? [复制]【英文标题】:Schedule a call to a method? [duplicate] 【发布时间】:2012-06-26 04:32:11 【问题描述】:可能重复:How to call a method after a delay
当用户点击一个按钮时,我想这样做(myVar1);。 1 秒后我想这样做(myVar2);。如何安排第二次通话?
【问题讨论】:
带有Timer 【参考方案1】:在桌面 GUI 应用程序中,我会使用来自 Swing API 的javax.swing.Timer
。也许android API有类似的东西?当然,上面 imran khan 的 Thread 示例本质上是一样的。
【讨论】:
【参考方案2】:创建一个处理程序并在可运行对象上执行postDelayed()
。检查documentation for Handler。
Handler handler = new Handler();
final Runnable r = new Runnable()
public void run()
doThis(myVar2);.
;
...
...
handler.postDelayed(r, 1000);
【讨论】:
原帖并没有提到 Android。 发布时有Android
标签。稍后编辑..查看编辑历史,,,
@mergeconflict,现在又来了。【参考方案3】:
使用 Thread 尝试这种方式:
btnbtnstart.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
// TODO Auto-generated method stub
if(mthreadRunning==false)
doThis(myVar1);
mthreadRunning=true;
dojobThread();
);
public void dojobThread()
Thread th=new Thread()
@Override
public void run()
try
while(mthreadRunning)
Thread.sleep(100L);
mthreadRunning=false;
doThis(myVar2);//call doThis(myVar2); here after 1 second delay
catch (InterruptedException e)
// TODO: handle exception
;
th.start();
【讨论】:
以上是关于安排对方法的调用? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
Apollo:从 cron 作业调用突变服务器端? [复制]
如何对服务器进行 JavaScript 同步调用? [复制]