74

Tôi đã biết cách đặt độ mờ của ảnh nền nhưng tôi cần đặt độ mờ cho đối tượng hình dạng của mình.

Trong ứng dụng Android của tôi, tôi có nó như thế này: nhập mô tả hình ảnh ở đây

và tôi muốn làm cho vùng màu đen này trong suốt một chút, như ở đây, ví dụ tôi có thể thấy các vòng tròn mặc dù "Chào mừng ...":

nhập mô tả hình ảnh ở đây

Đây là mã hình dạng của tôi:

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/shape_my"">
    <stroke android:width="4dp" android:color="#636161" />
    <padding android:left="20dp"
        android:top="20dp"
        android:right="20dp"
        android:bottom="20dp" />
    <corners android:radius="24dp" />
</shape>

Làm thế nào tôi có thể làm điều đó?

|
176

Nói chung, bạn chỉ cần xác định một màu hơi trong suốt khi tạo hình.

Bạn có thể đạt được điều đó bằng cách đặt kênh alpha màu.

#FF000000sẽ giúp bạn có một màu đen đặc trong khi đó #00000000sẽ giúp bạn có một màu đen trong suốt 100% (rõ ràng nó không còn màu đen nữa).

Bảng màu như thế này #AARRGGBBcó A là viết tắt của kênh alpha, R là màu đỏ, G là màu xanh lá cây và B là màu xanh lam.

Điều tương tự cũng áp dụng nếu bạn đặt màu trong Java. Ở đó nó sẽ chỉ trông như thế 0xFF000000.

CẬP NHẬT

Trong trường hợp của bạn, bạn phải thêm một solidnút. Giống như dưới đây.

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/shape_my"">
    <stroke android:width="4dp" android:color="#636161" />
    <padding android:left="20dp"
        android:top="20dp"
        android:right="20dp"
        android:bottom="20dp" />
    <corners android:radius="24dp" />
    <solid android:color="#88000000" />
</shape>

Màu sắc ở đây là một nửa màu đen trong suốt.

|
4

sử dụng mã dưới đây dưới dạng Progress.xml:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="5dip" />
            <gradient
                    android:startColor="#ff9d9e9d"
                    android:centerColor="#ff5a5d5a"
                    android:centerY="0.75"
                    android:endColor="#ff747674"
                    android:angle="270"
            />
        </shape>
    </item>

    <item android:id="@android:id/secondaryProgress">
        <clip>
            <shape>
                <solid android:color="#00000000" />
            </shape>
        </clip>
    </item>

    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <solid android:color="#00000000" />
            </shape>
        </clip>
    </item>

</layer-list>

Ở đâu:

  • "tiến trình" là tiến trình hiện tại trước ngón tay cái và "tiến trình phụ" là tiến trình sau ngón tay cái.
  • color = "# 00000000" là độ trong suốt hoàn hảo
  • LƯU Ý: tệp ở trên là từ độ phân giải mặc định của Android và dành cho 2.3.7, tệp này có sẵn trên các nguồn Android tại: frameworks / base / core / res / res / drawable / Progress_horizontal.xml. Đối với các phiên bản mới hơn, bạn phải tìm tệp có thể vẽ mặc định cho thanh tìm kiếm tương ứng với phiên bản Android của bạn.

sau đó sử dụng nó trong bố cục chứa xml:

<SeekBar
    android:id="@+id/myseekbar"
    ...
    android:progressDrawable="@drawable/progress"
    />

bạn cũng có thể tùy chỉnh ngón tay cái bằng cách sử dụng biểu tượng tùy chỉnh seek_thumb.png:

android:thumb="@drawable/seek_thumb"
|
1

Sử dụng cái này, tôi đã viết cái này cho ứng dụng của tôi,

<?xml version="1.0" encoding="utf-8"?>
<!--  res/drawable/rounded_edittext.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" android:padding="10dp">
    <solid android:color="#882C383E"/>
    <corners
        android:bottomRightRadius="5dp"
        android:bottomLeftRadius="5dp"
        android:topLeftRadius="5dp"
        android:topRightRadius="5dp"/>
</shape>
|

Câu trả lời của bạn (> 20 ký tự)

Bằng cách click "Đăng trả lời", bạn đồng ý với Điều khoản dịch vụ, Chính sách bảo mật and Chính sách cookie của chúng tôi.

Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ hoặc hỏi câu hỏi của bạn.