Android SetBackGroundColor not working

        在开发的过程中遇到


SetBackGroundColor没有效果的情况:

 <ImageView
        android:id="@+id/product_list_item_color_img"
        android:layout_width="@dimen/keyline_1_minus_8dp"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true" />

mHolder.productColor.setBackgroundColor(colors[i]);

后来查资料发现是因为view在设置为wrap_content或者match_parent时如果view里面没有内容,此刻view的height会被设置为0,

所以不是因为SetBackGroundColor没有效果,是因为height为0所以看不出来,所以如果没有内容的view只需要给其设置一个固定的

值就可以了!

解决方法:

 <ImageView
        android:id="@+id/product_list_item_color_img"
        android:layout_width="@dimen/keyline_1_minus_8dp"
        android:layout_height="50dp"
        android:layout_alignParentLeft="true" />

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: android setbackgroundcolor是一个Android中的方法,用于设置View的背景颜色。可以通过调用该方法来改变View的背景色,例如: view.setBackgroundColor(Color.RED); 这将把View的背景色设置为红色。其中,Color.RED是一个预定义的颜色常量,表示红色。除此之外,还可以使用其他预定义的颜色常量,或者使用自定义的颜色值。 ### 回答2: Android setbackgroundcolor指的是在Android开发中设置控件的背景颜色。在Android中,控件的背景色可以通过设置background属性来实现。使用setBackgroundColor()方法可以在代码中动态设置控件的背景颜色。 调用setBackgroundColor()方法需要传入一个颜色值作为参数,可以是十六进制颜色值或者是系统颜色值。如下代码设置View的背景颜色为红色: view.setBackgroundColor(Color.RED); Android中颜色的表示方式有两种,一种是十六进制颜色值,可以使用格式#RRGGBB或#AARRGGBB(其中AA是alpha通道值,表示透明度),例如纯红色为#FF0000,半透明红色为#80FF0000。另一种是系统颜色值,如Color.RED表示红色,Color.BLUE表示蓝色。 在实际开发过程中,我们可以使用设置背景色的方法来实现视觉效果的实现。例如,可以在按钮按下时改变按钮的背景颜色,提示用户当前按钮被按下了: button.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) { switch (motionEvent.getAction()) { case MotionEvent.ACTION_DOWN: // 按下时设置背景颜色为灰色 view.setBackgroundColor(Color.parseColor("#666666")); break; case MotionEvent.ACTION_UP: case MotionEvent.ACTION_CANCEL: // 松开时恢复背景颜色 view.setBackgroundColor(Color.parseColor("#333333")); break; } return false; } }); 通过以上实例我们可以看到,通过设置背景颜色来实现题意的视觉效果有很大的用处。因此,我们在Android开发中需要掌握如何使用setBackgroundColor()方法来设置控件的背景颜色。 ### 回答3: Android中的setBackgroundColor()方法可以用于设置视图的背景颜色。这个方法很容易使用,只需要将你想要设置的颜色以整数的形式传递给它即可。下面是一个简单的例子: view.setBackgroundColor(Color.RED); 你可以选择使用以下颜色之一: Color.BLACK Color.BLUE Color.CYAN Color.DKGRAY Color.GRAY Color.GREEN Color.LTGRAY Color.MAGENTA Color.RED Color.TRANSPARENT Color.WHITE Color.YELLOW 你还可以使用RGB颜色代码来定义自定义颜色。例如: view.setBackgroundColor(Color.rgb(255, 255, 0)); 这将设置背景颜色为黄色(红色值为255,绿色值为255,蓝色值为0)。 另外,你还可以使用十六进制颜色代码来设置自定义颜色。例如: view.setBackgroundColor(0xFFFF0000); 这将设置背景颜色为红色。 总的来说,setBackgroundColor()方法是设置视图背景颜色的简单有效的方式。无论你是要使用内置颜色还是自定义颜色,这个方法都能满足你的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值