首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Argb拆分/重组问题

Argb拆分/重组问题
EN

Stack Overflow用户
提问于 2017-10-27 17:55:42
回答 1查看 53关注 0票数 1
代码语言:javascript
复制
public static int[] getIntARGB(int argb){
    int result[] = new int[4];
    result[0] = (argb & 0xff000000) >> 24;
    result[1] = (argb & 0x00FF0000) >> 16;
    result[2] = (argb & 0x0000FF00) >> 8;
    result[3] = (argb & 0x000000FF);

    return result;
}
public static int getARBGInt(int a, int r, int g, int b) {
    return ((a << 24) | 0xFF) + ((r << 16) | 0xFF) + ((g << 8) | 0xFF) + (b | 0xFF);
}

你知道为什么如果我取一个argb int,然后分解它并重新放置它,它不会返回相同的值吗?

这两个函数中的一个(或两个)在某种程度上搞乱了,但我不知道为什么(当然,如果只是分解和重组我想要修改的相同的argb值,这将是愚蠢的,但如果已经有问题,我就不能处理x) )

EN

回答 1

Stack Overflow用户

发布于 2017-10-27 18:20:11

代码语言:javascript
复制
public static int getARBGInt(int a, int r, int g, int b) {
    return (a << 24) + (r << 16) + (g << 8) + b;
}

我不小心把“| 0xFF”放在了<< ...的结果上

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46972337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档