Я пытаюсь установить стиль по умолчанию для редактирования текстового представления. В этом примере я установил стиль по умолчанию для editText, а также для textView.
Вот мой файл styles.xml из папки значений:
<resources>
<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:editTextStyle">@style/AppTheme.EditText</item>
<item name="android:textViewStyle">@style/AppTheme.TextView</item>
</style>
<style name="AppTheme.EditText" parent="android:Widget.EditText">
<item name="android:textColor">@color/red</item>
<item name="android:padding">10dp</item>
</style>
<style name="AppTheme.TextView" parent="android:Widget.TextView">
<item name="android:textColor">@color/red</item>
<item name="android:padding">10dp</item>
</style>
</resources>
Как показано в снимках ниже, я добавил два файла editText и два textView в макете.
Вот мой макет:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="TextView1" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_marginTop="20dp"
android:text="TextView2" />
<EditText
android:id="@+id/editText1"
style="@style/AppTheme.EditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/textView2"
android:layout_marginTop="20dp"
android:ems="10"
android:text="EditText1" >
</EditText>
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/editText1"
android:layout_marginTop="20dp"
android:ems="10"
android:text="EditText2" >
</EditText>
</RelativeLayout>
Теперь проблема в том, что стиль по умолчанию для textView отлично работает, но для просмотра editText он не отражает стиль. Если я явно задал стиль для editText, тогда он отражает как ожидалось (как сделано для editText1), но не по умолчанию. Цвет текста для editText2 должен быть красным, но это не так. Я что-то пропустил?