2010-09-07 57 views
7

tôi đang sử dụng thông báo tùy chỉnh ... làm cách nào tôi có thể đặt thông báo không hiển thị? Và liệt kê các thông báo đó? đây là mã của tôi ...Nhiều thông báo có một biểu tượng trên thanh trạng thái trong android

public void onReceive(Context context, Intent intent) { 
     Toast.makeText(context, "coming", Toast.LENGTH_LONG).show(); 
     Bundle descBundle = intent.getExtras(); 
     CharSequence desc = descBundle.getString("description"); 
     int reminderId = descBundle.getInt("reminderId"); 
     NotificationManager mNotificationManager; 
     mNotificationManager = (NotificationManager) context 
       .getSystemService(Context.NOTIFICATION_SERVICE); 
     PendingIntent contentIntent = PendingIntent.getActivity(context, 
       reminderId, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT); 
     RemoteViews contentView = new RemoteViews(context.getPackageName(), 
       R.layout.main); 
     contentView.setImageViewResource(R.id.image, R.drawable.reminder_1); 
     contentView.setTextViewText(R.id.text, desc); 
     Notification notifyDetails = new Notification(); 
     notifyDetails.icon = R.drawable.reminder_1; 
     notifyDetails.when = System.currentTimeMillis(); 
     notifyDetails.tickerText = desc; 
     notifyDetails.iconLevel = 1; 
     notifyDetails.number = reminderId; 
     notifyDetails.contentView = contentView; 
     notifyDetails.contentIntent = contentIntent; 
     mNotificationManager.notify(0, notifyDetails); 
    } 

tôi đang sử dụng mã này để hiển thị thông báo ... nhưng nó chỉ hiển thị một nội dung thông báo ... nhưng biểu tượng cho thấy không có thông báo ...

+0

chúng tôi có thể thêm nhiều thông báo vào người quản lý đó không? – Kandha

Trả lời

2

Mỗi biểu tượng tương ứng với một thông báo; bạn không thể kết hợp nhiều thông báo với một phiên bản của một mục trên thanh thông báo.

Tuy nhiên, bạn có thể phủ một số lên trên biểu tượng của mình (ví dụ: để hiển thị số sự kiện biểu tượng đại diện) như một số ứng dụng SMS và email.

Điều này được thực hiện với biến số number phiên bản Notification, như bạn có trong đoạn mã ở trên.

Edit:
Để được rõ ràng hơn: Nếu bạn muốn nhiều thông báo, bạn cần phải tạo nhiều Notification đối tượng và gọi NotificationManager.notify() nhiều lần.

Mỗi Notification chỉ có thể tạo một biểu tượng, có thể có một phần nội dung bên trong vùng thông báo và có thể có một Intent được liên kết với nó.

+0

Tôi đã thử biến "số" nhưng cũng hiển thị thông báo đơn. – 100rabh

+0

@ 100rabh: Tôi đã chỉnh sửa câu trả lời của mình để rõ ràng hơn về việc nói rằng bạn không thể làm điều này. –

3

Hãy nhớ rằng nếu bạn muốn hiển thị nhiều thông báo cho các đối tượng khác nhau, bạn phải gán một ID thông báo khác nhau cho mỗi đối tượng.

Ví dụ, nếu bạn có 2 đối tượng khác nhau, bạn phải gọi

mNotificationManager.notify(0, notifyDetails); 

mNotificationManager.notify(1, notifyDetails); 

Nếu bạn không làm điều đó, thông báo sẽ luôn luôn một và sẽ luôn luôn đã cập nhật.

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