Ява — Палитра цветов с одним слайдером

Привет я реализую приложение для Android, но это оффтоп.

У меня есть ползунок, который может принимать значения от 0 … 16581375 (255 * 255 * 255), означает все значения RGB.

теперь технически это работает:

testText.setTextColor(0xff000000 + progress);

но когда я скользю, цвет очень сильно мерцает. Как я могу распределить цвета более гармонично

-1

Решение

Я полагаю, что мерцание связано с тем, что вы увеличиваете объединенные значения rgb на базовое значение 10 вместо шестнадцатеричного значения. Вот несколько идей о том, что делать вместо того, чтобы кодировать это самому.

1) Попробуйте преобразовать десятичные значения в шестнадцатеричные, прежде чем устанавливать цвет текста

testText.setTextColor(Integer.valueOf(progress, 16));

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

2) Убедитесь, что цвет текста изменяется в обработчике или асинхронной задаче. Мерцание может быть вызвано тем, что приложение пытается обрабатывать ваши команды синхронно.

3) Мерцание может иметь отношение к альфа-значению (ff в начале шестнадцатеричного числа), которое путается где-то вдоль строк в вашем коде. Просто следуйте ему через ваш код, чтобы быть уверенным.

4) Убедитесь, что вы не воссоздаете текстовое представление при каждом перемещении панели. Определите его в асинхронной задаче или в конструкторе активности.

0

Другие решения


По вопросам рекламы [email protected]