RGBa css vs aRGB Android

时间:2014-04-30 09:03:46

标签: android css rgba argb

我需要将此代码http://www.pahgawks.com/blog/fire-particles-for-html5-canvas/从css和javascript移植到Android。 在此代码中如果更改此行

stage.fillStyle = "rgba("+(260-(particles[i].life*2))+","+((particles[i].life*2)+50)+","+(particles[i].life*2)+","+(((max-particles[i].life)/max)*0.4)+")";

为:

stage.fillStyle = "rgba("+255+","+50+","+0+","+0.4+")";

看到黄色和红色和白色的火,但在Android中我只看到红色

paint.setColor(Color.argb(102,255,50,0);

但我有paint.setColor(Color.argb(alpha,red,green,blue))和rgba css的问题 在css代码中,我们看到一个颜色读取黄色和白色,在火中创建。

2 个答案:

答案 0 :(得分:0)

在Java代码中,当您在JavaScript中动态设置(基于Color.argb(102, 255, 50, 0)particles[i].life值)时,您将拥有静态颜色(max)。

尝试在Java代码中使用这些值,以便查看所有颜色。

答案 1 :(得分:0)

不知道为什么Android选择使用#ARGB颜色布局而不是规范的#RGBA颜色布局。即将发布的Android P中有hex value handling的新闻。

  

Android P应用启用了CSS Color Module Level 4行为草稿,用于   处理4和8个十六进制数字CSS颜色。

     自发布以来,Chrome已支持

CSS颜色模块第4级   52,但WebView当前禁用该功能,因为现有   发现Android应用程序的包含32位十六进制颜色   Android排序(ARGB),这会导致渲染错误。

     

例如,颜色#80ff8080当前在WebView中呈现为   不透明为浅红色(#ff8080),用于定位到Android P之前的SDK的应用。 当前领先的组件(Android会将其解释为Alpha组件)。如果某个应用定位到P或更高,   这将被解释为50%的透明浅绿色(#80ff80)。