Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:如何将字符串RGB值转换为颜色以在视图中使用_Java_Android_View - Fatal编程技术网

Java Android:如何将字符串RGB值转换为颜色以在视图中使用

Java Android:如何将字符串RGB值转换为颜色以在视图中使用,java,android,view,Java,Android,View,我从db中获得以下字符串值:“rgb(105,105,105)” 我尝试了Color.parseColor(),但它不是正确的选项 我尝试将其与view.setBackgroundColor()配合使用 在Java/Android中是否有这种方法?对于“rgb(105,105,105)”这种格式,您必须手动解析它。 请尝试以下代码: try{ String str = "rgb(105, 105, 105)"; String splitStr = str.substring

我从db中获得以下字符串值:
“rgb(105,105,105)”

我尝试了
Color.parseColor()
,但它不是正确的选项

我尝试将其与view.setBackgroundColor()配合使用

在Java/Android中是否有这种方法?

对于
“rgb(105,105,105)”
这种格式,您必须手动解析它。 请尝试以下代码:

  try{

    String str = "rgb(105, 105, 105)";
    String splitStr = str.substring(str.indexOf('(') + 1, str.indexOf(')'));
    splitString = splitStr.split(",");

    int colorValues[] = new int[splitString.length];
    for (int i = 0; i < splitString.length; i++) {
        colorValues[i] = Integer.parseInt(splitString[i].trim());
    }

    int color = Color.rgb(colorValues[0], colorValues[1],colorValues[2]);
    view.setBackgroundColor(color); 

 }catch(Exception ex){

 }
试试看{
String str=“rgb(105,105,105)”;
String splitStr=str.substring(str.indexOf(“(”)+1,str.indexOf(“)”);
splitString=splitStr.split(“,”);
int colorValues[]=新的int[splitString.length];
for(int i=0;i
简洁明了:

view.setBackgroundColor(Color.rgb(105, 105, 105));

编辑:阿布先生已经给出了解析的答案。它的完整答案,使用它。我将放弃我的答案。

如果您控制数据库中的格式,我建议您将其更改为
parseColor()
将处理的格式;e、 例如,
#aabbcc
。如果没有,那么你必须自己解析它,我相信。请在询问任何问题之前搜索