美文网首页
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