rgba 转 argb
时间: 2024-04-24 19:23:56 浏览: 144
根据引用\[1\]中提供的代码,可以使用以下三种方法将RGBA转换为ARGB:
方法1:字符串截取和组合
```java
String argbStr = rgba.substring(0, 1) + rgba.substring(7, 9) + rgba.substring(1, 7);
int argb = Color.parseColor(argbStr);
```
方法2:转为Char数组,遍历重组
```java
char\[\] chars = rgba.toCharArray();
StringBuilder tempStr = new StringBuilder();
for (int i = 0; i < chars.length; i++) {
if (i == 0) {
tempStr.append(chars\[0\]);
} else if (i == 1) {
tempStr.append(chars\[7\]);
} else if (i == 2) {
tempStr.append(chars\[8\]);
} else {
tempStr.append(chars\[i - 2\]);
}
}
int argb = Color.parseColor(tempStr.toString());
```
方法3:位操作
```java
int rgba = Color.parseColor(rgbaStr);
int argb = (rgba >>> 8) | (rgba << (32 - 8));
```
另外,引用\[2\]中提供了类似的代码,可以根据需要进行调整和验证。引用\[3\]提到了在使用openGLES时,需要将RGBA转换为ARGB,但没有提供具体的代码实现。
#### 引用[.reference_title]
- *1* *2* [Android 必知必会 - RGBA转ARGB](https://blog.csdn.net/ys743276112/article/details/105443683)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [openGLES使用:RGBA转ARGB](https://blog.csdn.net/aa642531/article/details/80230121)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文