【发布时间】:2020-12-25 17:36:35
【问题描述】:
我目前正在解决一些 UI 组件的背景必须是:屏幕的主颜色加上 30% 的不透明度的问题。
主颜色是从后端服务检索的,格式为:#224466。
现在,我想对收到的任何颜色应用 30% 的不透明度。我想出的解决方案涉及字符串解析,它正在工作,但我对此并不满意:
我是这样做的:
if(mainColor.startsWith("#") && mainColor.length == 7){
return "#4D" + mainColor.substring(1) // 4D = 30% alpha
}
您知道是否有更好的方法(可能涉及Color 类)来解决上述任务?
【问题讨论】: