2012-08-28 17 views
8

Tôi không thể thấy thông điệp bánh mì nướng trong điện thoại di động Android 4.1. Upto hôm qua tôi đã có thể nhìn thấy tin nhắn chúc mừng. Từ hôm nay chỉ có tôi không thể nhìn thấy tin nhắn. Làm ơn giúp tôi.Tại sao tin nhắn bánh mì nướng không hiển thị trong hệ điều hành Android 4.1 có chứa điện thoại di động

Toast.makeText(getApplicationContext(), "hi", Toast.LENGTH_SHORT).show(); 

Tôi đã thử thông báo bánh mì nướng tùy chỉnh thay vì thông báo bánh mì nướng. Nhưng vẫn không hoạt động.

Tuỳ chỉnh bánh mì nướng:

LayoutInflater inflater=getLayoutInflater(); 
View layout = inflater.inflate(R.layout.toast_layout,(ViewGroup) findViewById(R.id.toast_layout_root)); 
TextView text = (TextView) layout.findViewById(R.id.text); 
text.setText("Please fill Name"); 
Toast toast = new Toast(getApplicationContext()); 
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); 
toast.setDuration(Toast.LENGTH_LONG); 
toast.setView(layout); 
toast.show(); 
+4

Vui lòng chia sẻ mã hoặc dấu vết của bạn. – fiddler

+0

if (first_name.length() <1 || first_name == null) \t \t \t { \t \t \t \t Toast.makeText (getApplicationContext(), "Xin vui lòng điền Name", Toast.LENGTH_SHORT) .show(); \t \t \t \t Tiện ích.writeIntoLog ("Hãy điền tên"); \t \t \t \t} – AndroidRaji

+0

Tôi vừa thử nghiệm điều này trên thiết bị 4.1 và nó hoạt động .. Bạn có chắc rằng chuỗi 'first_name' của bạn thực sự trống không? – fiddler

Trả lời

8

Thay đổi này và kiểm tra một lần nữa.

if(first_name.length() == 0) 
{ 
    Toast.makeText(NameOfYourActivity.this, "Please fill Name", Toast.LENGTH_SHORT).show(); 
    Utilities.writeIntoLog("Please fill Name"); 
} 
+0

xem tôi có thể xem tin nhắn bánh mì nướng trong thiên hà, giả lập.Nhưng tôi không thể nhìn thấy trong nexus (os 4.1) – AndroidRaji

+0

@AndroidRaji Tôi chỉ muốn kiểm tra là mã này làm việc trong nexus (4.1). Vì vậy, hãy thử mã của tôi và cho tôi biết thời tiết nó đang làm việc hay không. –

+0

Bạn vẫn nên chạy kiểm tra NULL. – slybloty

2

Bánh mì nướng hoạt động tốt trong tất cả các phiên bản Android. Có thể có vài vấn đề trong mã của bạn như

  1. bối cảnh của bạn là không sai
  2. Bạn đang cố gắng để hiển thị bánh mì nướng trong thread nền thay vì sợi nhân.

Sửa Trong bánh mì nướng tùy chỉnh của bạn không đặt phụ huynh trong inflater bố trí của bạn ví dụ như sử dụng như dưới đây

View layout = inflater.inflate(R.layout.toast_layout,null); 
+0

Plz tel cho tôi chủ đề nền và thread công nhân.Có thể cho tôi mã ví dụ cho cả hai. – AndroidRaji

+0

Chủ đề công việc là chủ đề chính trong đó tất cả bản vẽ và hoạt ảnh của bạn chạy và cũng có trách nhiệm cập nhật giao diện người dùng của ứng dụng của bạn.Bạn có thể đọc tài liệu về chủ đề (Giao diện người dùng) chính. Trong mỗi ứng dụng có một chủ đề chính và chuỗi nền là những thứ bạn tạo cho quá trình nền – Dharmendra

+0

cảm ơn rất nhiều ... – AndroidRaji

7

chỉ đăng các liên kết Google Code ở đây.

Vì Jelly Bean, người dùng có thể tắt thông báo cho một ứng dụng cụ thể thông qua cài đặt "chi tiết ứng dụng".

Một hiệu ứng phụ rất xấu và không mong muốn là khi các thông báo bị vô hiệu hóa, thông báo Bánh mì nướng cũng bị tắt, ngay cả khi người dùng đang chạy ứng dụng!

Bạn khuyến khích sử dụng Bánh mì nướng trong hướng dẫn thiết kế của mình, nhưng ai sẽ muốn sử dụng nếu người dùng có khả năng loại bỏ chúng, đặc biệt nếu tin nhắn nướng là một phản hồi quan trọng để hiển thị cho người dùng ...

Tôi hiểu ít nhất rằng Toasts có thể bị vô hiệu hóa khi ứng dụng ở chế độ nền, nhưng không phải nếu nó là hoạt động tiền cảnh.

48

Bánh mì nướng không hiển thị cùng tôi trong Android 4.1 vì Hiển thị thông báo đã được tắt trong cài đặt của ứng dụng của tôi. Tôi vừa vào Cài đặt-> Quản lý ứng dụng -> [Ứng dụng của tôi] và bật lên Hiển thị thông báo và bánh mì nướng bắt đầu xuất hiện.

+2

Cảm ơn @herman. Tôi đã thử tất cả các cách để hiển thị tin nhắn bánh mì nướng và bị kẹt, nhưng bài đăng của bạn giúp tôi tìm ra lý do. – Shweta

+2

Tôi rất vui khi nghe điều đó. Cảm ơn. –

+2

Cảm ơn @hrehman upvote cho bạn. –

0

Tôi gặp sự cố tương tự. Khi tôi gọi mã trên chuỗi giao diện người dùng, sự cố đã được giải quyết cho tôi

public void showToastMessage(final String msg) { 

    runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      Toast.makeText(BaseActivity.this, msg, Toast.LENGTH_LONG).show(); 
     } 
    }); 
} 
Các vấn đề liên quan