//注意:该方法创建Toast对象的时候时长因该设置为
Toast.LENGTH_LONG,因为该他的时长就是3秒,与下面的延时时间对应
//cnt:需要显示的时长,毫秒
private void showMyToast(final Toast toast, final int cnt) {
final Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
toast.show();
}
}, 0, 3000);//每隔三秒调用一次show方法;
new Timer().schedule(new TimerTask() {
@Override
public void run() {
toast.cancel();
timer.cancel();
}
}, cnt );//经过多长时间关闭该任务
}
public class MainActivity extends Activity {
private Toast toast1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toast1 = Toast.makeText(MainActivity.this, "显示完成了", 0);
}
public void click(View v)
{
Toast toast = Toast.makeText(MainActivity.this, "显示十秒钟", 1);
showMyToast(toast, 10000);
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
toast1.show();
}
}, 10000);
}
private void showMyToast(final Toast toast, final int cnt) {
final Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
toast.show();
}
}, 0, 3000);
new Timer().schedule(new TimerTask() {
@Override
public void run() {
toast.cancel();
timer.cancel();
}
}, cnt );
}
}