美文网首页android技术
android CoordinatorLayout滑动标题背景渐

android CoordinatorLayout滑动标题背景渐

作者: hao_developer | 来源:发表于2021-11-10 18:47 被阅读0次

    监听事件

    barLay.addOnOffsetChangedListener(this)
    
    override fun onOffsetChanged(appBarLayout: AppBarLayout?, verticalOffset: Int) {
            Log.e("height", verticalOffset.toString())
            val verticalHeight = abs(verticalOffset)
            val collHeight = rlCollLay.height
            if (verticalHeight >= collHeight - 5 ){
                tvAcTitle.text = "个人主页"
            }else{
                tvAcTitle.text = ""
            }
            //这个就是关键方法了,大家可根据实际需要进行编写
            if (verticalOffset < 0){
                when (verticalHeight) {
                    in 0..10 -> {//最好多写一点儿,避免出现问题
                        coordLay.setBackgroundColor(ContextCompat.getColor(this,R.color.transparent))
                    }
                    in 1..collHeight -> {
                        val scale: Float = verticalOffset.toFloat() / collHeight
                        val alpha = 255 * (1 - scale)
                        coordLay.setBackgroundColor(Color.argb(alpha.toInt(), 255, 255, 255))
                    }
                    else ->{
                        coordLay.setBackgroundColor(ContextCompat.getColor(this,R.color.transparent))
                    }
                }
            }
           //追加一个判断,避免存在一点儿朦层效果
           if (verticalHeight in 0..10){
                coordLay.setBackgroundColor(ContextCompat.getColor(this,R.color.transparent))
            }
        }
    

    相关文章

      网友评论

        本文标题:android CoordinatorLayout滑动标题背景渐

        本文链接:https://www.haomeiwen.com/subject/kbjizltx.html