2011-11-01 38 views
59

Tôi cần thời lượng chính xác là LENGTH_LONG và LENGTH_SHORT tính bằng mili giây (mili giây). Ngoài ra, tôi cần phải biết nếu thời lượng của tin nhắn Bánh mì nướng với LENGTH_LONG sẽ có cùng thời lượng trong bất kỳ điện thoại nào và với bất kỳ phiên bản API nào.Thời lượng của Bánh mì nướng LENGTH_LONG và LENGTH_SHORT

Có ai biết thời gian được xác định không ?, Ý tôi là được xác định bằng ms. Tôi biết rằng LENGTH_LONG là một số int const với giá trị 1. Nhưng tôi không thể tìm thấy thời gian thực tế được xác định.

+0

bạn đã cố gắng chỉ định milliseocnds trong setDuration()? Tài liệu nói rằng nó sẽ được người dùng cấu hình, nhưng không cụ thể về vấn đề này –

Trả lời

135

Đã trả lời here. Giống như bạn đề cập Toast.LENGTH_SHORTToast.LENGTH_LONG đang không ở trong ms nhưng 0 hoặc 1.

Thời gian kéo dài thực tế là:

private static final int LONG_DELAY = 3500; // 3.5 seconds 
private static final int SHORT_DELAY = 2000; // 2 seconds 
1

Qua thử và sai Tôi đã tìm thấy Toast.LENGTH_LONG kéo dài rất gần với 2500ms

10

Ở đây, chính thức android source nơi những cờ được định nghĩa:

public class NotificationManagerService extends SystemService { 

    static final int LONG_DELAY = 3500; // 3.5 seconds 
    static final int SHORT_DELAY = 2000; // 2 seconds 

    private void scheduleTimeoutLocked(ToastRecord r){ 
     mHandler.removeCallbacksAndMessages(r); 
     Message m = Message.obtain(mHandler, MESSAGE_TIMEOUT, r); 
     long delay = r.duration == Toast.LENGTH_LONG ? LONG_DELAY : SHORT_DELAY; 
     mHandler.sendMessageDelayed(m, delay); 
    } 
} 
4

đúng là chúng tôi không được phép thay đổi thời lượng của Bánh mì nướng. Nhưng nếu bạn đang tìm kiếm một thay thế và bạn thực sự cần phải làm điều này với một Bánh mì nướng, sau đó bạn có thể thử điều này.

Giữ một bánh mì nướng trùng lặp trong các dòng tiếp theo

Ex:

Toast.makeText(this, "Hello StackOverFlow", Toast.LENGTH_LONG).show(); 
Toast.makeText(this, "Hello StackOverFlow", Toast.LENGTH_LONG).show(); 

Người dùng sẽ không phát hiện bất kỳ thay đổi trong quá trình chuyển đổi giữa 2 nâng cốc chúc mừng.

Cảm ơn.

+2

Vì nó được đề cập rõ ràng là 'không thể làm' trong các câu trả lời trước tôi đang cung cấp một phương pháp thay thế và tôi đã đề cập rõ ràng nó. Mong bạn có thể hiểu. Tôi vừa tìm kiếm bây giờ và phát hiện ra cùng một loại câu hỏi ở đó và đi qua các câu trả lời một số trong số đó là lựa chọn thay thế. Nhưng tôi không tìm thấy bất kỳ phiếu bầu nào cho họ. Tốt hơn cho tìm lựa chọn thay thế hơn là nói không thể chỉ đúng? Hy vọng điều này có ý nghĩa. [Bánh nướng có thể dài hơn "Bánh mì nướng" không? "(Http://stackoverflow.com/questions/2220560/can-an-android-toast-be-longer-than-toast-length-long) –

Các vấn đề liên quan