2016-08-22 36 views
7

Mỗi nội dung trong số này bao gồm các điều khoản văn bản trong suốt một ứng dụng là gì?TextColor vs TextColorPrimary vs TextColorSecondary

Cụ thể hơn, điều gì sẽ thay đổi mỗi thứ trong một thay đổi chủ đề trong ứng dụng của tôi? Tôi muốn các văn bản nút của tôi có màu khác so với các bản xem trước của tôi; là một tiểu học và trung học khác?

Bất kỳ thông tin nào liên quan đến các điều khoản này đều được đánh giá cao!

Trả lời

10

TextColor chỉ là thuộc tính xml để đặt màu thành văn bản của bất kỳ chế độ xem cụ thể nào.

TextColorPrimary là màu văn bản mặc định cho các nút được bật và TextView lớn.

TextColorSecondary là màu văn bản mặc định cho Vừa và Nhỏ Textviews.

Bỏ qua điều này, như đối với những gì bạn muốn làm, có một cách tốt hơn. Bạn muốn chỉnh sửa style.xml của mình sao cho AppTheme chủ đề mặc định (hoặc bất kỳ thứ gì khác bạn đã khai báo là chủ đề trong tệp kê khai của bạn) chứa các thuộc tính xml cần thiết để tùy chỉnh màu văn bản của bạn.

Kiểu kết quả AppTheme sẽ trông như thế này khi bạn hoàn thành.

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:textColor">#hexColorForTextViews</item> 
    <item name="android:buttonStyle">@style/myDefaultButton</item> 
</style> 

văn bảnMàu sắc sẽ đặt màu mặc định cho tất cả các bản xem trước của bạn. buttonStyle sẽ tham chiếu một kiểu tùy chỉnh mà bạn muốn cho tất cả các nút của bạn. Để thực hiện công việc này, hãy thêm thẻ kiểu này vào tệp styles.xml của bạn.

<style name="myDefaultButton"> 
    <item name="android:textColor">#hexColorForButtons</item> 
    <!-- other stuff you want your buttons to inherit by default --> 
</style> 
Các vấn đề liên quan