2017-02-17 3 views
0

Я использую библиотеку Leanback для приложения Android TV, и я использую типичный BrowseFragment, который использует ImageCardView s для навигации. ImageCardViews показывают эффект пульсации при нажатии: полупрозрачный белый круг начинается посередине и растет, чтобы заполнить представление.Цвет пульсации на ImageCardView в Android TV

Я пытаюсь изменить цвет пульсации в соответствии с основным цветом моего приложения. Мое приложение использует пользовательскую тему, который наследуется от Theme.Leanback, и я думал, что (на основании, например, https://stackoverflow.com/a/31922339/925478), что я мог бы изменить пульсацию цвета, перекрывая атрибут colorControlHighlight в теме:

<style name="MyLeanback" parent="Theme.Leanback"> 
    <item name="colorControlHighlight">@color/red</item> 
</style> 

Однако это не похоже, имеет какой-то эффект. Когда я нажимаю и удерживаю ImageCardView, я все еще вижу полупрозрачный белый круг.

Как изменить цвет пульсации?

+0

Вы пробовали другое решение в ссылке SO, которую вы предоставляете? – KENdi

+0

@ KENdi Я нашел свой ответ, когда я тренировался, чтобы попробовать другое (время выполнения). Спасибо за ваше предложение. –

ответ

1

Решение было раздражающе легко:

<style name="MyLeanback" parent="Theme.Leanback"> 
    <item name="android:colorControlHighlight">@color/red</item> 
</style> 

Обратите внимание на android: префикс, который требуется переопределить тем, когда не используется AppCompat.

Я был отговорен редактором от включения этого префикса; он жаловался, что для этого требуется API21 (мое приложение нацелено на более низкую версию, потому что это единственный .APK для мобильных и телевизионных платформ).

Смежные вопросы