iOS 弹幕库LeoDanmakuKit的中文文档(1.0.1)

本文档介绍了iOS弹幕库LeoDanmakuKit的详细使用方法,包括如何安装、如何在Storyboard中使用、库的功能特性以及工作原理。LeoDanmakuKit支持暂停、继续、停止和播放,采用GCD处理数据,确保流畅运行,并提供随机颜色和通道。未来计划增加AttributeText支持和更多扩展接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原创Blog,转载请注明出处
http://blog.csdn.net/hello_hwc?viewmode=list
我的stackoverflow

profile for Leo on Stack Exchange, a network of free, community-driven Q&A sites


前言:最近App用到了弹幕这块,到Github上找了找,没找到合适的,就自己开发了个。


Github地址

https://github.com/LeoMobileDeveloper/LeoDanmakuKit


支持

  • 支持Storyboard
  • 支持自动缓冲区溢出的时候自动清理
  • 用GCD写的后台线程来处理数据,所以不会卡顿住线程
  • 支持暂停,继续,停止,播放
  • 支持随机颜色,和随机通道

安装

建议用CocoaPod安装

pod "LeoDanmakuKit"

手动安装

下载Github文件,拷贝Pod/Class文件夹中的文件到想要的工程中


如何使用

在需要使用的文件中

#import LeoDanmaku.h

在storyboad上拖拽一个UIView,设置Class为LeoDanmakuView,然后拖拽Outlet(或者手动alloc init)

@property (weak, nonatomic) IBOutlet LeoDanmakuView *danmakuView;

需要发送增加一条弹幕的时候,创建一个LeoDanmkuModel对象,然后添加到View,

    if (self.textfiled.text != nil) {
        NSArray * colors = @[[UIColor redColor],[UIColor blueColor],[UIColor greenColor],[UIColor whiteColor]];
        LeoDanmkuModel * danmaku = [LeoDanmkuModel randomDanmkuWithColors:colors MaxFontSize:18 MinFontSize:15];
        danmaku.text = self.textfiled.text;
        [self.danmakuView addDanmaku:danmaku];
        [self.textfiled endEditing:true];
    }

暂停

    [self.danmakuView pause];

恢复

    [self.danmakuView resume];

注意

在想要弹幕view被移除的时候,要调用

    [self.danmakuView stop];

原理

基于CoreAnimation写的动画

默认的DanmakuView讲视图区域分为8个channel

  • 每次随即寻找空闲的Channel,如果找到则将弹幕TextLayer添加到Channel中
  • 如果当前Channel不是空闲的,则随机一直向上或者向下寻找下一个Channel,如果没有空闲的,本次什么都不做

近期计划

  • 支持AttributeText
  • 为扩展增加接口
  • 增加代理来传递事件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值