Цвет значка на разные темы - PullRequest
4 голосов
/ 15 марта 2012

Разные устройства Android имеют разные темы. Это означает, что цвета фона, как и в диалоговых окнах, могут отличаться в разных версиях Android и у разных производителей.

Это может привести к тому, что значки станут "невидимыми":

image 4.0.3">

Проблема со стандартными темами для Android может быть решена относительно просто, если использовать разные цветные значки в целевых папках, например. белые значки в папке drawable-v14 и черные в drawable-v10. Но это не решает проблему, связанную с индивидуальными темами от производителей, будь то TouchWiz, Blur или Sense. Просто невозможно покрыть каждое устройство этим методом.

Другой способ - нарисовать маленькую черную рамку вокруг белых значков и наоборот. Но если фон будет серым, как в ICS, он тоже не будет хорошо выглядеть.

Итак, вопрос в следующем: Как предоставить пользовательские значки, которые будут хорошо работать на каждой теме, не касаясь самой темы?

1 Ответ

1 голос
/ 15 марта 2012

Учет всех вариантов поставщиков (и ошибок) будет проблематичен.

Я вижу пару вариантов:

  1. Явно выбираю тему акций и надеемся на лучшее
  2. Выберите пользовательскую тему, полученную из стандартной темы, в которой вы управляете цветом фона
  3. Динамически оцените цвет фона для выбранной темы и установите значок в зависимости от точки перелома (например, темные значки).если фон достаточно светлый).Не уверен, что это будет практично, но, по крайней мере, это должно быть несколько универсальным.

Недавно я пошел с жестко закодированными цветами в производной теме, чтобы исправить ошибку в выборе цвета диалогового окна Nook длядиалог.Более обширное тестирование, вероятно, показало бы мне другую платформу, которую я только что сделал с этим хуже.

Надеюсь, у кого-то есть лучший ответ, чем те, потому что ни одна из них не кажется полностью чистой и универсальной.Читая ваше сообщение еще раз, похоже, что ни один из этих вариантов не соответствует вашим критериям, не затрагивая тему.

...