Tôi luôn thấy hình ảnh hữu ích khi học một khái niệm mới, vì vậy đây là một câu trả lời bổ sung.
Có %p
nghĩa là tỷ lệ phần trăm gốc, nghĩa là phần trăm kích thước hẹp nhất của bất kỳ chế độ xem nào mà chúng tôi đặt có thể vẽ được. Các hình ảnh trên được tạo bằng cách thay đổi gradientRadius
mã trong mã này
my_gradient_drawable
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:type="radial"
android:gradientRadius="10%p"
android:startColor="#f6ee19"
android:endColor="#115ede" />
</shape>
Cái nào có thể được đặt trên background
thuộc tính của chế độ xem như thế này
<View
android:layout_width="200dp"
android:layout_height="100dp"
android:background="@drawable/my_gradient_drawable"/>
Trung tâm
Bạn có thể thay đổi tâm của bán kính với
android:centerX="0.2"
android:centerY="0.7"
trong đó số thập phân là phân số của chiều rộng và chiều cao cho x
và y
tương ứng.
Tài liệu
Dưới đây là một số lưu ý từ tài liệu giải thích thêm một chút.
android:gradientRadius
Bán kính của gradient, chỉ được sử dụng với radial gradient. Có thể là một thứ nguyên rõ ràng hoặc một giá trị phân số so với kích thước tối thiểu của hình dạng.
Có thể là một giá trị dấu phẩy động, chẳng hạn như "1,2".
Có thể là một giá trị thứ nguyên, là một số dấu phẩy động được nối với một đơn vị chẳng hạn như "14,5sp". Các đơn vị khả dụng là: px (pixel), dp (pixel không phụ thuộc vào mật độ), sp (pixel được chia tỷ lệ dựa trên kích thước phông chữ ưa thích), in (inch) và mm (milimét).
Có thể là một giá trị phân số, là một số dấu phẩy động được thêm vào với% hoặc% p, chẳng hạn như "14,5%". Hậu tố% luôn có nghĩa là một tỷ lệ phần trăm của kích thước cơ sở; hậu tố% p tùy chọn cung cấp kích thước liên quan đến một số vùng chứa mẹ.