设置XRefreshView下拉刷新头的背景色为透明色

        今天在做小应用的时候,发现了一个棘手的问题,我想要去设置XRefreshView下拉刷新头的背景色为透明色,问了Qoder之后,他给我的建议如下:

1.new 一个新的头

2.设置该对象的背景色为透明色

 // 创建标准的XRefreshViewHeader
XRefreshViewHeader header = new XRefreshViewHeader(getContext());
header.setBackgroundColor(android.graphics.Color.TRANSPARENT);

但是始终不生效,接下来我就不断咨询Qoder,但是每次的回答都是围绕着直接给header 设置背景去解决的。甚至他建议我定义一个背景色为透明色的View,然后直接设置给header,实在是让我哭笑不得。

        最后,经过我的思考,既然XRefreshViewHeader 可以拿到,我就去这个自定义控件里面看了下代码,他是通过一个布局文件制作的自定义控件。

        所以我就想,既然官方没有提供对应的API。这个布局能不能通过getChild去获取,然后手动设置背景色。经过断点,可以看到确实能够找到这个布局,如下图所示。

        既然思路有了,接下来就是代码编写了,最终的代码如下所示:

// 创建标准的XRefreshViewHeader            
XRefreshViewHeader header = new XRefreshViewHeader(getContext());
header.getChildAt(0).setBackgroundColor(android.graphics.Color.TRANSPARENT);

        并且,为了方便其他人通过Qoder解决类似的问题,我还将方法告诉了Qoder:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值