Tôi sẽ thêm câu trả lời của mình vì tôi không sử dụng bất kỳ câu trả lời nào khác được cung cấp.
Với Thư viện hỗ trợ v7, tất cả các kiểu thực sự đã được xác định và sẵn sàng để sử dụng, đối với các nút tiêu chuẩn, tất cả các kiểu này đều có sẵn:
style="@style/Widget.AppCompat.Button"
style="@style/Widget.AppCompat.Button.Colored"
style="@style/Widget.AppCompat.Button.Borderless"
style="@style/Widget.AppCompat.Button.Borderless.Colored"
Widget.AppCompat.Button
:
Widget.AppCompat.Button.Colored
:
Widget.AppCompat.Button.Borderless
Widget.AppCompat.Button.Borderless.Colored
:
Để trả lời câu hỏi, phong cách sử dụng là do đó
<Button style="@style/Widget.AppCompat.Button.Colored"
.......
.......
.......
android:text="Button"/>
Cách đổi màu
Đối với toàn bộ ứng dụng:
Màu sắc của tất cả các điều khiển UI (không chỉ các nút, mà cả các nút hành động nổi, hộp kiểm, v.v.) được quản lý bởi thuộc tính colorAccent
như được giải thích ở đây . Bạn có thể sửa đổi phong cách này và áp dụng màu của riêng bạn trong định nghĩa chủ đề của bạn:
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
...
<item name="colorAccent">@color/Orange</item>
</style>
Đối với một nút cụ thể:
Nếu bạn cần thay đổi kiểu của một nút cụ thể, bạn có thể xác định kiểu mới, kế thừa một trong các kiểu cha được mô tả ở trên. Trong ví dụ dưới đây, tôi chỉ thay đổi màu nền và phông chữ:
<style name="AppTheme.Button" parent="Widget.AppCompat.Button.Colored">
<item name="colorButtonNormal">@color/Red</item>
<item name="android:textColor">@color/White</item>
</style>
Sau đó, bạn chỉ cần áp dụng kiểu mới này trên nút với:
android:theme="@style/AppTheme.Button"
Để đặt thiết kế nút mặc định trong bố cục, hãy thêm dòng này vào chủ đề Styles.xml:
<item name="buttonStyle">@style/btn</item>
nơi @style/btn
là chủ đề nút của bạn. Điều này đặt kiểu nút cho tất cả các nút trong bố cục với một chủ đề cụ thể