短视频程序源码,简单布局收缩动画

软件工具
0 72
private fun showOrhide(
//收缩部分
        linearLayout: LinearLayout,
        //旋转箭头
        taskDetailArrow: RelativeLayout
    ) {
        val scrollView = binding.scrollView
        val rect = Rect()
        linearLayout.getGlobalVisibleRect(rect)
        val arrow = taskDetailArrow.getChildAt(1)
        if (linearLayout.visibility == View.VISIBLE) {
            arrow.rotation = 180f
            ObjectAnimator.ofFloat(
                linearLayout,
                "translationY",
                0.0f, -linearLayout.measuredHeight.toFloat()
            ).apply {
                duration = 500
                interpolator = AccelerateInterpolator()
                start()
            }.addListener(object : Animator.AnimatorListener {
                override fun onAnimationRepeat(animation: Animator?) {
                }
 
                override fun onAnimationEnd(animation: Animator?) {
                    linearLayout.visibility = View.GONE
                    scrollView.post {
                        scrollView.smoothScrollTo(0, rect.bottom);
                    }
                }
 
                override fun onAnimationCancel(animation: Animator?) {
                }
 
                override fun onAnimationStart(animation: Animator?) {
 
                }
            })
 
        } else {
            arrow.rotation = 0f
            ObjectAnimator.ofFloat(
                linearLayout,
                "translationY",
                -linearLayout.measuredHeight.toFloat(), 0.0f
            ).apply {
                duration = 500
                interpolator = AccelerateInterpolator()
                start()
            }.addListener(object : Animator.AnimatorListener {
                override fun onAnimationRepeat(animation: Animator?) {
                }
 
                override fun onAnimationEnd(animation: Animator?) {
                    linearLayout.visibility = View.VISIBLE
                    scrollView.post {
                        scrollView.smoothScrollTo(0, rect.bottom);
                    }
                }
 
                override fun onAnimationCancel(animation: Animator?) {
                }
 
                override fun onAnimationStart(animation: Animator?) {
                }
            })
        }


短视频程序源码,简单布局收缩动画-小师傅资源网--http://bbs.small-master.com/2447.html
精选帖子
十万人搭建支付暗道:跑分模式兴起,为赌博和洗钱提供百亿资金 209
庆余年电视剧提前观看全集 258
蚂蚁任务辅助平台怎么样?微信辅助10元~12.5元一单 248
uTools 一款极简插件化跨平台的现代桌面工具软件 338
我和我的祖国——2019国庆三部曲其三 284
攀登者——2019国庆三部曲其二 248
中国机长——2019国庆三部曲其一 325
甩手赚,原名挂挂赚,强势复活了 517
分享一个微信抖音挂机新平台,一个号日收益在3-5元左右 539
热门帖子
3dmax全套黄金自学教程 42
训狗五部曲 养狗不再麻烦 27
3个月成为Python爬虫工程师 26
《拆弹专家2》TC电影资源 22
万兴全能格式转换器v12.5.2.5 19
2020千峰C++全套教程 19
猫咪训练+养猫攻略大全 18
芭芭农场抽天猫用通用红包 15
蚂蚁合花领支付宝2元红包 15