2018.6.2 AndroidStudio項目中的問題:===== oast.LENGTH_LONG和Toast.LENGTH_SHORT分別對應多長時間


oast.LENGTH_LONG和Toast.LENGTH_SHORT分別對應多長時間

在Android源碼中的NotificationManagerService.java這個類中定義了兩個靜態變量,分別對應Toast.LENGTH_LONG(3.5秒)和Toast.LENGTH_SHORT(2秒)的值

Toast.LENGTH_SHORT大概顯示時間為1秒,
Toast.LENGTH_LONG大概顯示時間為3秒

private static final int LONG_DELAY = 3500; // 3.5 seconds

private static final int SHORT_DELAY = 2000; // 2 seconds

在下面的方法中進行了調用:

private void scheduleTimeoutLocked(ToastRecord r, boolean immediate)

{

    Message m =Message.obtain(mHandler, MESSAGE_TIMEOUT, r);

    long delay =immediate ? 0 :(r.duration == Toast.LENGTH_LONG ? LONG_DELAY : SHORT_DELAY);

   mHandler.removeCallbacksAndMessages(r);

   mHandler.sendMessageDelayed(m, delay);

}

也就是說,Toast..makeText(Context context,CharSequence text, int duration).show() 中的duration只能設這兩個值,其他值是沒有用處的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM