0

저는 현재 앱을 r21 appcompat-v7 lib (및 Android Studio/Gradle)로 이식하고 있습니다. 이 응용 프로그램에서, 거의 모든 위젯은 어떤 식 으로든 스타일이 지정되어 있습니다.이 도구는 lib의 prevoulsy r19 버전에서 잘 작동합니다.Appcompat 21의 스타일을 전역으로 재정의합니다.

r21 이후 많은 스타일이 시스템/lib에 의해 무시되고 재료 1이 사용되기 때문에. 이것은 특히 Spinner, ActionBarEditText에 해당하는 것으로 보입니다 (적어도 이들을 발견했습니다). 내 RadioButton s, 예를 들어 CheckBox 등은 이전과 마찬가지로 테마입니다.

여기 (게시물에 대한 변경 이름)을 Spinner에 대한 관련 XML (V14)는 다음 Theme.MyTheme 넓은 매니페스트 응용 프로그램에서 설정 물론

<style name="Theme.MyTheme" parent="@style/Theme.AppCompat.Light"> 
... 
    <item name="android:dropDownSpinnerStyle">@style/MySpinner</item> 
... 
</style> 

<style name="MySpinner" parent="Widget.AppCompat.Spinner"> 
    <item name="android:background">@drawable/spinner_background_holo_light</item> 
    <item name="android:dropDownSelector">@drawable/list_selector_holo_light</item> 
</style> 

.
재미있는 점은 레이아웃에서 각 Spinner에 대해이 스타일을 설정할 때 별도로 잘 작동한다는 것입니다.

그렇다면 지원 라이브러리가 무엇인지, 어떻게 해결할 수 있는지 알 수 있습니까? 감사!

답변

0

AppCompat는 플랫폼 테마에 대해 android:spinnerStyle 속성을 재정의합니다. 이미 android:dropDownSpinnerStyle 대신에 재정의하려고 했습니까?

+0

정말 미안하지만이 질문을 남겨 두었습니다. 네, 테마 계층 구조의 일부 속성을 무시하는 것을 잊어 버렸습니다. 어쨌든 많은 재 작업이 필요합니다. 힌트를 가져 주셔서 감사합니다! – langerhans

관련 문제