Я заметил, что использование тем AppCompat, иконки панели инструментов по умолчанию становятся тонированными атрибутом colorControlNormal
в моем стиле.
<style name="MyTheme" parent="Theme.AppCompat">
<item name="colorControlNormal">@color/yellow</item>
</style>
Как вы можете видеть выше, однако, это не происходит со всеми значками. Я предоставил знак "плюс", который я получил из официальных значков, и он не становится тонированным (я использовал "белую" версию png). Из того, что я понял из этого question, система отображает только значки только с альфа-каналом. Это правда?
Если это так: Есть ли место, где я могу найти знаковые значки, определенные в форме? Если нет - и если значки на панели инструментов должны быть альфа-только для тонирования - как Google ожидает, что мы будем использовать предоставленные значки на панели инструментов?
Где-то в SDK я нашел несколько значков, заканчивающихся на _alpha.png
, и они действительно хорошо окрашиваются. Однако мне нужен полный набор значков материалов, и из официальных источников я мог найти только теги white
, grey600
и black
.
Применение ColorFilter
во время выполнения было бы немного болезненным, и моя фактическая панель инструментов - с некоторыми значками, тонированными, а некоторые другие - выглядят неплохо.