2017-01-06 29 views
8

Tôi đã nghiên cứu về điều này và phát hiện ra rằng addAction (int icon, CharSequence title, PendingIntent intent) không được dùng nữa, vì vậy tôi đã sử dụng addAction (Notification.Action action). Trong cả hai trường hợp, biểu tượng không thể được nhìn thấy.Biểu tượng không được hiển thị trong thông báo trong Android nougat

NotificationCompat.Action action = new NotificationCompat.Action.Builder(R.drawable.ic_share, "", pendingIntent).build(); 

notificationBuilder.addAction(action); 

Các văn bản dường như được làm việc mặc dù, nhưng tôi đã để lại nó trống, vì thế có một không gian trống bên dưới hình ảnh chính, nơi biểu tượng có nghĩa vụ phải được hiển thị

Trả lời

15

Đây không phải là một lỗi, nhưng thay đổi trong thiết kế với Android Nougat. Các biểu tượng được xác định bởi hoạt động bổ sung (Thông báo.Thực hiện hành động) không được hiển thị thêm bởi các thiết bị. Chúng vẫn được yêu cầu cho các thiết bị cũ và thiết bị Android Wear!

Trích dẫn android developers google blog

Bạn sẽ lưu ý rằng các biểu tượng không có mặt trong các thông báo mới; thay vào đó, nhiều phòng hơn được cung cấp cho chính nhãn trong không gian hạn chế của ngăn thông báo . Tuy nhiên, thông báo biểu tượng tác vụ vẫn được yêu cầu và tiếp tục được sử dụng trên các phiên bản cũ hơn của Android và trên các thiết bị như Android Wear.

Nếu bạn đã và đang xây dựng thông báo của bạn với NotificationCompat.Builder và phong cách tiêu chuẩn có sẵn cho bạn đó, bạn sẽ có được cái nhìn mới và cảm nhận theo mặc định không có mã thay đổi cần thiết.

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