Các biểu tượng Android (và các yếu tố UI khác, như độ dài kéo) được đo bằng dp
. A dp
là một pixel độc lập với thiết bị / mật độ . 1 dp
tương đương với 1 px trên màn hình 160 dpi . Nhưng để chuyển đổi sang mật độ màn hình khác, bạn cần nhân nó với hệ số mật độ. Vì vậy, thông thường nên cung cấp nhiều hình ảnh cho hầu hết các biểu tượng .
Ví dụ: các biểu tượng thông báo được sử dụng trong thanh trạng thái được chỉ định là 24x24 dp, với lề 1 dp (vì vậy biểu tượng thực tế chỉ chiếm một hình vuông quang 22x22 dp, mặc dù một số AA có thể chảy vào lề 1 dp / khung an toàn đó ). Để chuyển đổi 24 dp thành kích thước pixel thực tế, các phép tính thô này được sử dụng:
display density dp units * scale = px units
ldpi ~120 dpi 24x24 dp * .75 = 18x18 px
mdpi ~160 dpi 24x24 dp * 1.0 = 24x24 px
hdpi ~240 dpi 24x24 dp * 1.5 = 36x36 px
xhdpi ~320 dpi 24x24 dp * 2.0 = 48x48 px
xxhdpi ~480 dpi 24x24 dp * 3.0 = 72x72 px
Ngoài ra còn có mật độ hiển thị trung gian được gọi là tvdpi
(~ 213 dpi) nằm giữa mdpi
vàhdpi
và có một yếu tố quy mô của 1.33
, nhưng đây là ít gặp hơn. Điều mà các tài liệu Android khuyên là bạn tuân theo 3:4:6:8:12
tỷ lệ chia tỷ lệ khi cung cấp hình ảnh bitmap được đặt trước (thường là PNG) cho mật độ hiển thị phổ biến nhất.
Tôi không thấy bất cứ nơi nào họ chỉ định kích thước dp cho các biểu tượng lớn được sử dụng trong thông báo, nhưng chiều cao của mỗi thông báo trong chế độ xem hộp thư đến bình thường là 64 dp . Vì vậy, điều đó có nghĩa là kích thước tối đa cho các biểu tượng / hình ảnh được hiển thị sẽ là:
ldpi: 48x48 px
mdpi: 64x64 px
hdpi: 96x96 px
xhdpi: 128x128 px
xxhpdi: 192x192 px
Nếu bạn muốn biết chính xác kích thước hình ảnh biểu tượng chứng khoán của Android là gì, bạn có thể tìm hiểu từ Gói mẫu biểu tượng Android, v4.0 .
Xem thêm câu hỏi SO này: Thông báo tổ ong: Làm thế nào để đặt largeIcon
đúng kích thước?