随笔-77  评论-91  文章-1 

延长Toast显示时间

---恢复内容开始---

由于Toast的显示时间只有两种:

Toast.LENGTH_SHORT: 2秒

Toast.LENGTH_LONG: 3.5秒

而且是写死的,没给开发者自定义时间的权利,所以最好的办法还是自定义Toast。这里只是记录我目前为解决问题而延长Toast时间的处理

Toast t = Toast.makeText(OnTableActivity.this,"Tost长时间显示。。。。", Toast.LENGTH_LONG);
t.setGravity(Gravity.CENTER, 0, 0);
t.show();
execToast(t);
/**
*此方法利用TimerTask在Toast显示一秒后再显示一次。
*/
private void execToast(final Toast toast) {
                Timer timer = new Timer();
                timer.schedule(new TimerTask() {

                        @Override
                        public void run() {
                                //调主线程方法,否则可能会显示不出来。
                                initToast(toast);
                        }

                }, 1000);
        }
private void initToast(Toast toast) {
     toast.show();  
}
posted on 2013-07-17 13:40 花郎V 阅读(...) 评论(...) 编辑 收藏