我需要代码来控制android中toast的持续时间

时间:2015-06-26 21:41:40

标签: android

我想要允许自由持续时间的代码。

也是吐司的位置。我尝试使用处理程序,但我不完全确定它是如何工作的,所以这是我身边的失败。

所以更好的想法?

2 个答案:

答案 0 :(得分:3)

public void CustomToast(Context context, String msg, long timeinmillisec) {
    // TODO Auto-generated constructor stub

    final Toast toast = Toast.makeText(context, ""+msg, Toast.LENGTH_SHORT);
    toast.setGravity(Gravity.CENTER, 0, 0);
    toast.setDuration(Toast.LENGTH_LONG);
            toast.show();
    CountDownTimer countDownTimer = new CountDownTimer(timeinmillisec, 1000)     {

        private boolean isShowing = false;

        @Override
        public void onTick(long millisUntilFinished) {
            // TODO Auto-generated method stub
            if (isShowing) {
                toast.cancel();
            } else {
                toast.show();
            }
        }

        @Override
        public void onFinish() {
            // TODO Auto-generated method stub

        }
    };
    countDownTimer.start();
}

答案 1 :(得分:1)

至于位置,您可以调用Toast类的以下方法 setGravity(int gravity,int xOffset,int yOffset)

您只能将持续时间设置为以下常量之一 LENGTH_SHORT 和 的 LENGTH_LONG