9

tôi đang làm việc trên một ví dụ về Thư viện Hỗ trợ và Thanh công cụ, đây là mã của cách bố trí trên các tài liệu AndroidLàm cách nào? Attr/mean trên Android?

<android.support.v7.widget.Toolbar 
    android:id="@+id/my_toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:background="?attr/colorPrimary" 
    android:elevation="4dp" 
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/> 

Đây là lần đầu tiên tôi nhìn thấy những ?attr và tôi không có đầu mối về những gì họ có nghĩa là hoặc các giá trị này được lưu trữ ở đâu. Các tùy chỉnh này có được xác định trước trên khung làm việc của Android không?

tham khảo: Android Toolbar Documentation

Trả lời

9

?attr/ tham chiếu đến thuộc tính. Thuộc tính là các giá trị được chỉ định trong chủ đề ứng dụng của bạn. Các thuộc tính cụ thể đó trong ví dụ của bạn là tất cả các giá trị được chỉ định trong các chủ đề do thư viện hỗ trợ cung cấp. Android cũng có các thuộc tính riêng và chúng có thể được sử dụng bởi ?android:attr/.

Đối với một số trường hợp, được coi là thực hành tốt để sử dụng giá trị thuộc tính thay vì giá trị trực tiếp vì nó cho phép tùy chỉnh dễ dàng. Ví dụ: khi bạn tạo chế độ xem tùy chỉnh, bạn có thể sử dụng ?attr/colorAccent để người dùng của chế độ xem không phải cung cấp màu và sẽ sử dụng số colorAccent được sử dụng trong chủ đề ứng dụng thay thế.

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