Android如何多次调用方法,并在它们之间有延迟 [英] Android How to call a method multiple times with a delay between them
本文介绍了Android如何多次调用方法,并在它们之间有延迟的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想问一下,如果有更好的方法可以多次调用一个方法,每次调用之间有5秒的延迟。
I would like to ask, if is there a better away to call a method multiple times giving a 5 sec delay between each call.
但我真的想要的是调用Toas()方法大约7次,并且使用下面的代码,它看起来不正确。
But I really want is to call the Toas() method about 7 times, and with my code below, it doesnt look right.
谢谢你们
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
CallMultipleToast();
........
private void CallMultipleToast(){
Runnable call_1 = new Runnable() {
@Override
public void run() {
Toast("Message one");
Runnable call_2 = new Runnable() {
@Override
public void run() {
Toast("Message two");
Runnable call_3 = new Runnable() {
@Override
public void run() {
Toast("Message three");
//CAN I ADD MORE
}
};//end call_3
new Handler().postDelayed(call_3, 5000);
}
};//end call_2
new Handler().postDelayed(call_2, 5000);
}
};//end call_1
new Handler().postDelayed(call_1, 5000);
}
private void Toast(String message){
Toast.makeText(this, message, Toast.LENGTH_LONG).show();
}
推荐答案
也许你可以这样做这个:
maybe you can do it like this :
private void CallMultipleToast(){
Thread t = new Thread(){
@Override
public void run(){
try {
for(i=0;i<7;i++){
Toast("Message "+(i+1));
sleep(5000);
}
} catch (InterruptedException ex) {
Log.i("error","thread");
}
}
};
t.start();
}
这篇关于Android如何多次调用方法,并在它们之间有延迟的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文