Я создал действительно простой вид. Я хотел бы создать макет по умолчанию для моей кнопки и импортировать его через AppTheme, который я добавил в файл манифеста.
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="buttonStyle">@style/ButtonStyle</item>
<item name="android:buttonStyle">@style/ButtonStyle</item>
<item name="android:button">@style/ButtonStyle</item>
</style>
<style name="ButtonStyle" >
<item name="android:textSize">20dp</item>
<item name="android:gravity">center</item>
<item name="android:layout_width">150dp</item>
<item name="android:layout_gravity">center</item>
<item name="android:layout_marginTop">10dp</item>
<item name="android:background">@drawable/defaultbutton</item>
</style>
Итак, я ожидаю, что все кнопки в моем приложении будут стилизованы под эти настройки. Единственный способ сделать это - импортировать стиль внутри моей кнопки, используя
style="@style/ButtonStyle"
Кнопка «Начать тест» оформляется через внутренний импорт.
Забавно, что некоторые стили импортированы для кнопок «Настройки» и «Проверить датчики» (например, drawable / deefaultbutton или центрированный текст)
<Button
style="@style/ButtonStyle"
android:id="@+id/test"
android:layout_height="50dp"
android:text="Start Test" />
<Button
android:id="@+id/settings"
android:layout_width="150dp"
android:layout_height="50dp"
android:text="Settings" />
<Button
android:id="@+id/checkSensors"
android:layout_width="150dp"
android:layout_height="50dp"
android:text="Check Sensors" />
Мой вопрос: почему это происходит, и я не могу установить его по умолчанию, не импортировав его через «Theme»?
Пробовал это и читал это , но у меня это не работает.