Swift:向下滚动时BannerCell扩大效果,导航栏的颜色渐变效果:

本文介绍了如何在Swift中实现滚动时BannerCell的扩大效果,随着用户向下滚动,图片会相应变大拉长。同时详细说明了导航栏颜色的渐变效果,通过设置UIView的alpha值,根据滚动距离动态调整导航栏的透明度,实现平滑过渡。

向下滚动时BannerCell扩大效果

先初始化offY:

 

var offY = Variable(0.0)

    

  //这块代码的作用是当BannerCell向下拉的时候,其中的图片也会相应的变大拉长。

        

        offY

            .asObservable()

            .subscribe(onNext: { (offy)in

                self.visibleCells.forEach { (cell)in

                    let cell = cellas! BannerCell

                    cell.img.frame.origin.y = CGFloat.init(offy)

                    cell.img.frame.size.height = 200 - CGFloat.init(offy)

                }

            })

            .addDisposableTo(dispose)

在另外的这个方法里面设置值:

extension HomeViewController:UIScrollViewDelegate {

    

    func scrollViewDidScroll(_ scrollView:UIScrollView) {

        bannerView.offY.value =Double(scrollView.contentOffset.y)

  

    }

    




导航栏的颜色渐变效果

在开始的时候先定义一个UIView的对象属性:

var barImg = UIView()


在需要设置外观的方法里面设置导航栏为透明的:

        //获取导航栏

        barImg = (navigationController?.navigationBar.subviews.first)!

        //将导航栏变透明

        barImg.alpha =0


在代理里面设置

extension HomeViewController:UIScrollViewDelegate {

    

    func scrollViewDidScroll(_ scrollView:UIScrollView) {

        barImg.alpha = scrollView.contentOffset.y / 200

       

    }

}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值