Trong dự án của tôi (Nhắm mục tiêu API 21 có hỗ trợ AppCompat), tôi cần mở rộng lớp EditText
. Vấn đề của tôi là MyEditText
lớp không kế thừa EditText
phong cách tùy chỉnh với:Thừa kế kiểu mở rộng Widget
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.NoActionBar" >
<item name="colorPrimary">@color/primary</item>
<item name="colorControlNormal">@color/grey_light</item>
<item name="colorControlActivated">@color/primary</item>
<item name="colorControlHighlight">@color/primary</item>
</style>
với @color/primary
xanh
Ảnh chụp màn hình:
- dòng 1:
EditText
tập trung - dòng 2:
EditText
không tập trung (kích hoạt) - dòng 3:
MyEditText
không tập trung (kích hoạt)
Câu hỏi của tôi là: Làm thế nào tôi có thể kế thừa EditText
phong cách mặc định trong MyEditText
?
AppCompat sử dụng một LayoutInflater tùy chỉnh thay thế việc thực hiện EditText có màu sắc của riêng nó khi nó thấy một phần tử EditText. Thật không may là lớp này không được công khai, cũng không phải là các lớp cần thiết để tạo TextText tùy chỉnh của riêng bạn, vì vậy tốt nhất bạn có thể làm ngay bây giờ là gửi yêu cầu tính năng chống lại appcompat trên [AOSP issue tracker] (https: // code) .google.com/p/android/issues/list) – alanv
Cảm ơn sự giúp đỡ của bạn, tôi đã mở một vé https://code.google.com/p/android/issues/detail?id=80114 – alex