美文网首页
IOS 类似于直播中的状态 音乐起伏指示器

IOS 类似于直播中的状态 音乐起伏指示器

作者: 路边的风景呢 | 来源:发表于2020-10-30 10:38 被阅读0次

    我这里是用 swift  写的 如果需要改成OC 自行修改  代码如下: 

     var musicLayer:CAReplicatorLayer = {

            letmusilayer =CAReplicatorLayer.init()

            musilayer.frame=CGRect(x:0, y:0, width:30, height:30)

            musilayer.position=CGPoint(x:15, y:5)

            musilayer.instanceCount=3 //这个是白色的竖向layer 的个数

            musilayer.instanceTransform = CATransform3DMakeTranslation(5, 0, 0)

            musilayer.instanceDelay=0.2 //间隔

            musilayer.backgroundColor = UIColor.clear.cgColor // 想要看效果就把这个颜色 改成红色或者 其他颜色

            musilayer.masksToBounds=true;

            lettLayer:CALayer=CALayer.init()

            tLayer.frame=CGRect(x:10, y:20, width:3, height:20) // 设置跳动的View 的frame

            tLayer.cornerRadius=3;

            tLayer.backgroundColor = UIColor.white.cgColor;// 设置跳动的View 的颜色

            musilayer .addSublayer(tLayer)

            letmusicAnimation:CABasicAnimation=CABasicAnimation.init(keyPath:"position.y")

            musicAnimation.duration=0.35

            musicAnimation.fromValue= tLayer.frame.size.height

            musicAnimation.byValue=12

            musicAnimation.autoreverses=true

            musicAnimation.repeatCount=MAXFLOAT

            musicAnimation.isRemovedOnCompletion=false // 防止跳界面之后再回来动画就停止了

            tLayer .add(musicAnimation, forKey:"musicAnimation")

            return  musilayer

        }()

    self.statusBtn.layer.addSublayer(self.musicLayer)

    然后在需要添加这个动画的view 上添加我这里是在一个button上加 的 

    相关文章

      网友评论

          本文标题:IOS 类似于直播中的状态 音乐起伏指示器

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