RecyclerView顶部阴影透明度渐变效果

如需转载请评论或简信,并注明出处,未经允许不得转载

最近在做一个直播项目,如下图所示

demo

需要实现一个需求,就是直播间的聊天列表的顶部需要透明度渐变效果。试了很多方法,都不是特别理想,最后找到下面这样一个方法,实现起来非常简单,和大家分享一下

class FadingEdgeTopRecyclerView(context: Context, attrs: AttributeSet) :
    RecyclerView(context, attrs) {

    init {
        //列表是否垂直
        isVerticalFadingEdgeEnabled = true
        //阴影高度
        setFadingEdgeLength(100.dp)
    }

    /**
     * 顶部阴影强度,这里用系统的默认效果,所以没有重写
     */
    override fun getTopFadingEdgeStrength(): Float {
        return super.getTopFadingEdgeStrength()
    }

    /**
     * 底部阴影强度,这里不需要,所以设置为0f
     */
    override fun getBottomFadingEdgeStrength(): Float {
        return 0f
    }

}

有些功能实际上系统已经有其实现方式,如果不知道有些API,纯粹自己实现的话,可能还是比较费力的,本文非常简短,纯粹记录一下项目开发过程中遇到的问题,希望能对正好遇到这个问题的人有所帮助

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。