Я пытался найти ресурсы, объясняющие, как я могу стилизовать кнопку переключения в теме Material Design.
Раскрашивать виджеты теперь довольно просто с новым appcompat-v7:21.
Пока вы используете appcompat-v7:21, вы можете заменить все свои старые Switch
виджеты на SwitchCompat
виджеты. Поэтому в ваших макетах xml вместо использования старого тега Switch
используйте android.support.v7.widget.SwitchCompat
.
Затем в файле styles.xml убедитесь, что родительской темой вашего приложения является тема Theme.AppCompat
, например Theme.AppCompat.Light
.
Наконец, ключевым моментом является указание собственного значения для colorAccent
:
<item name="colorAccent">@color/my_fancy_color</item>
Цвет, который вы укажете для colorAccent
, будет использоваться для окрашивания виджетов в вашем приложении, таких как SwitchCompats
, EditTexts
, RadioButtons
и т. д.
Таким образом, ваш файл styles.xml может выглядеть примерно так:
<style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
<!-- colorPrimary is used for the default action bar background -->
<item name="colorPrimary">@color/color_primary</item>
<!-- colorPrimaryDark is used to color the status bar -->
<item name="colorPrimaryDark">@color/color_primary_dark</item>
<!--
colorAccent is used as the default value for colorControlActivated
which is used to color widgets
-->
<item name="colorAccent">@color/my_fancy_color</item>
<!-- You can also set colorControlNormal, colorControlActivated
colorControlHighlight & colorSwitchThumbNormal. -->
</style>
где находятся чертежи, которые я могу использовать для создания собственной версии?
Я бы не рекомендовал изменять чертежи напрямую, но они находятся в
sdk/platforms/android-21/data/res/drawable-XXXX
а файлы называются
btn_switch_to_off_mtrl_XXXXX.9.png
btn_switch_to_on_mtrl_XXXXX.9.png
switch_track_mtrl_alpha.9.png
person
JDJ
schedule
11.12.2014