2012-09-24 48 views
18

Tôi sử dụng NotificationCompat.Builder để hiển thị thông báo của mình thông qua các phiên bản Android và sử dụng bố cục tùy chỉnh cho thông báo.
Bố cục tùy chỉnh hoạt động tốt trên Android 3 trở lên (API cấp 11), nhưng không hiển thị trên API cấp 10 trở xuống. Tôi đã thử nghiệm nó trên 2,3 và 2,2 trong trình giả lập.Bố cục thông báo tùy chỉnh không hoạt động trên Android 2.3 hoặc thấp hơn

Heres mã của tôi:

Builder builder = new NotificationCompat.Builder(getApplicationContext()); 

    RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.notification_layout); 
    contentView.setImageViewResource(R.id.notImage, R.drawable.stat_icon); 
    contentView.setTextViewText(R.id.notTitle, getResources().getString(R.string.streamPlaying)); 
    contentView.setTextViewText(R.id.notText, StartActivity.streamName + " " + getResources().getString(R.string.playing)); 

    builder 
      .setContentTitle(getResources().getString(R.string.streamPlaying)) 
      .setContentText(StartActivity.streamName + " " + getResources().getString(R.string.playing)) 
      .setSmallIcon(R.drawable.stat_icon) 
      .setContentIntent(pendingIntent) 
      .setOngoing(true) 
      .setWhen(0) 
      .setTicker(StartActivity.streamName + " " + getResources().getString(R.string.playing)) 
      .setContent(contentView); 

    not = builder.build(); 

thực sự cơ bản. Tệp bố cục là chính xác, giống như trong hướng dẫn thông báo trên android.com, để đảm bảo rằng tôi không mắc lỗi trong đó. ;)
Hãy nhớ: Làm việc tốt trên 3.0 trở lên, nhưng không phải ở mức 2.3 trở xuống.

Trả lời

37

Đây có thể là lỗi trong thư viện hỗ trợ - xem this issue.

Bạn có thể phải làm việc xung quanh nó bằng cách áp dụng contentView trực tiếp:

not.contentView = contentView; 
+1

Oh yeah. Lỗi. Cảm ơn rất nhiều, tôi sẽ thử nó. – Leandros

+3

Bố cục hoạt động cho đến nay trên 2,3 trở xuống, nhưng tôi không thể nhấp vào nút mà tôi đã thêm. Tính năng này chỉ hoạt động trên Android 3 trở lên ... – Leandros

+3

@Leandros, hỗ trợ cho các nút nhấp trong thông báo không được thêm cho đến Android 3.0. – Justin

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