2013-06-27 5 views
0

Я пытаюсь использовать remoteView.setFloat(R.id.remote_background, "setAlpha", (float) 0.7);, чтобы установить прозрачность фона/альфа, но я получаю «Ошибка загрузки виджета». Я читал, что вы можете установить прозрачность, добавив шестнадцатеричное значение перед цветом. Но так как я получаю цвет от ColorPicker, и это целочисленное значение (пример: -13890612), я не знаю, как его использовать.Прозрачность фона RemoteView

ответ

0

Вы должны использовать шестигранный обозначения, чтобы увидеть цвет, как в формате RRGGBB, так что ваш -13890612 должен быть довольно заглянула в 2C0BCC, что делает больше смысла, так как вы можете легко сказать, какие значения каждого из компонентов цвета. И добавить альфа-канал (который равен 0 - (полный прозрачный) в 0xff (полный непрозрачный)), просто OR правильное значение с вашим цветом и использованием. То есть чтобы сделать его полупрозрачным ИЛИ 0x80:

int rgb = 0x2C0BCC; 
int argb = 0x80000000 | rgb; 
0

USe setInt(R.id.remote_background, "setBackgroundColor", colorInt); вместо этого.