当前位置: 首页 > 知识库问答 >
问题:

如何在android中设置rgb颜色?

赵飞雨
2023-03-14

我试图设置文本背景颜色使用text1.set背景颜色(Color.rgb(r, g, b));

是红色、绿色、蓝色值来自数据库,基于值isetr=128,g=255,b=128编程时,它的颜色为暗绿色,但我运行程序时它将显示红色

for(int i = 0; i < list.length(); i++){
            JSONObject c = list.getJSONObject(i);

            // Storing each json item in variable
           // String GRPCODE = c.getString(TAG_GRPCODE);
            String GRPNAME = c.getString(TAG_GRPNAME);
            String QTY = c.getString(TAG_QNT);
            String BUDGET = c.getString(TAG_BUDGET);
            String STOCK = c.getString(TAG_STOCK);
            String DIFF = c.getString(TAG_DIFF);
            String DIFF_P = c.getString(TAG_DIFF_P);

             COLOR = c.getString(TAG_COLOR);

            /*String[] ARGB = COLOR.split(" ");

             String V1=ARGB[0];
             String V2=ARGB[1];
             String V3=ARGB[2];
             String V4=ARGB[3];

             a=Integer.parseInt(V1);
             r=Integer.parseInt(V2);
             g=Integer.parseInt(V3);
             b=Integer.parseInt(V4);*/


            HashMap<String, String> map = new HashMap<String, String>();

            // adding each child node to HashMap key => value
          //  map.put(TAG_GRPCODE, GRPCODE);
            map.put(TAG_GRPNAME, GRPNAME);

            map.put(TAG_QNT, QTY);
            map.put(TAG_BUDGET, BUDGET);
            map.put(TAG_STOCK, STOCK);
            map.put(TAG_DIFF, DIFF);
            map.put(TAG_DIFF_P, DIFF_P);

            map.put(TAG_COLOR,COLOR);
            //map.put(TAG_PHONE_MOBILE, mobile);

            // adding HashList to ArrayList
            contactList.add(map);
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
    /**
     * Updating parsed JSON data into ListView
     * */
     ListAdapter adapter = new SimpleAdapter(this, datatList,
            R.layout.list_item,
            new String[] {  TAG_GRPNAME, TAG_QNT, TAG_BUDGET, TAG_STOCK, TAG_DIFF, TAG_DIFF_P, },
            new int[] {
                     R.id.l2, R.id.l3, R.id.l4, R.id.l5, R.id.l6, R.id.l7}){
         @Override
         public View getView(int position, View convertView, ViewGroup parent) {
             View v = convertView;
             if (v == null) {
                 LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                 v = vi.inflate(R.layout.list_item, null);
             }
              text1 = (TextView) v.findViewById(R.id.l7);


             HashMap<String, String> map=dataList.get(position); 
             map.get(TAG_COLOR); 
             String[] ARGB = COLOR.split(" "); 
             String V1=ARGB[0]; 
             String V2=ARGB[1]; 
             String V3=ARGB[2]; 
             String V4=ARGB[3]; 
             a=Integer.parseInt(V1); 
             r=Integer.parseInt(V2); 
             g=Integer.parseInt(V3); 
             b=Integer.parseInt(V4); 

             text1.setBackgroundColor(Color.rgb(r,g,b));

             return super.getView(position, v, parent);
         }
     };

共有1个答案

吴西岭
2023-03-14

最后我得到了答案

ListAdapter adapter = new SimpleAdapter(this, dataList,
            R.layout.list_item,
            new String[] {  TAG_GRPNAME, TAG_QNT, TAG_BUDGET, TAG_STOCK, TAG_DIFF, TAG_DIFF_P, },
            new int[] {
                     R.id.l2, R.id.l3, R.id.l4, R.id.l5, R.id.l6, R.id.l7}){
         @Override
         public View getView(int position, View convertView, ViewGroup parent) {
             View v = convertView;
             if (v == null) {
                 LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                 v = vi.inflate(R.layout.list_item, null);
             }
              text1 = (TextView) v.findViewById(R.id.l7);

              String rgbColor=  dataList.get(position).get(TAG_COLOR);
              String[] ARGB = rgbColor.split(" ");     
              a=Integer.parseInt(ARGB[0]);
              r=Integer.parseInt(ARGB[1]);
              g=Integer.parseInt(ARGB[2]);
              b=Integer.parseInt(ARGB[3]);                        
              text1.setBackgroundColor(Color.rgb(r, g, b));
              return super.getView(position, v, parent);
          }

     };
 类似资料:
  • 我想将图标设置为,我从这个网站下载了图标:FlatIcon 现在我想设置此图标的颜色,但当使用时,只需为背景添加颜色,而不是设置为图标! 当使用时,我可以用此代码设置图标的颜色:。 如何将图标的颜色设置为,例如?谢谢大家

  • 我试图使用下面的XSSFColor方法设置RGB颜色值 我正在传递短值,但是不管RGB值是多少,我的前景都会被设置为黑色。我还没有发现这是为什么——有什么想法吗?

  • 本文向大家介绍如何在HTML中设置背景颜色?,包括了如何在HTML中设置背景颜色?的使用技巧和注意事项,需要的朋友参考一下 要在HTML中设置背景颜色,请使用style属性。style属性指定元素的内联样式。该属性与HTML <body>标记以及CSS属性background-color一起使用。HTML5不支持<body>标记的bgcolor属性,因此CSS样式用于添加背景色。HTML5中不推荐

  • 本文向大家介绍如何在HTML中设置字体颜色?,包括了如何在HTML中设置字体颜色?的使用技巧和注意事项,需要的朋友参考一下 要在HTML中设置字体颜色,请使用样式属性。style属性指定元素的内联样式。该属性与HTML <p>标记一起使用,具有CSS属性颜色。HTML5不支持<font>标记,因此CSS样式用于添加字体颜色。<font>标记在HTML5中已弃用。 请记住,样式属性的使用会覆盖全局设

  • 我想设置图表的数据颜色,所以我找到了MPAndroidchart,但示例是由Java制作的,而不是Kotlin。 这是我的Kotlin来源。如何更改颜色 此外,我想在条形图中的条形图下方制作标签(如第一张图片),请帮帮我。。T\u T 代码结果:

  • 我想为我的应用程序创建一个暗模式,我唯一的问题是我无法更改片段中的文本颜色,用户可以打开/关闭暗模式。这就是为什么我无法更改清单中的主题对此问题的任何解决方案? 这是为了检测是否打开了暗模式,背景颜色是否发生了变化,但我不知道如何改变片段中的文本颜色。 这是我的设置页面(片段),我想更改标题和摘要的颜色。