// // OCBarrageView.m // TestApp // // Created by QMTV on 2017/8/22. // Copyright © 2017年 LFC. All rights reserved. // #import "YOUPAIOCBarrageManager.h" @interface YOUPAIOCBarrageManager() @end @implementation YOUPAIOCBarrageManager - (void)dealloc { NSLog(@"%s", __func__); [_renderView stop]; } +(instancetype)shareManager { static YOUPAIOCBarrageManager *_manager = nil; static dispatch_once_t once; dispatch_once(&once, ^{ _manager = [[YOUPAIOCBarrageManager alloc]init]; _manager.renderView.frame = CGRectMake(0.0,NavBarHeight,KScreenWidth,KScreenHeight-NavBarHeight-NavBarHeight); // self.barrageManager.renderView.center = self.view.center; _manager.renderView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; }); return _manager; } - (instancetype)init { self = [super init]; if (self) { _renderView = [[YOUPAIOCBarrageRenderView alloc] init]; } return self; } - (void)start { [self.renderView start]; } - (void)pause { [self.renderView pause]; } - (void)resume { [self.renderView resume]; } - (void)stop { [self.renderView stop]; } - (void)youpaifrenderBarrageDescriptor:(YOUPAIOCBarrageDescriptor *)barrageDescriptor { if (!barrageDescriptor) { return; } if (![barrageDescriptor isKindOfClass:[YOUPAIOCBarrageDescriptor class]]) { return; } YOUPAIOCBarrageCell *barrageCell = [self.renderView dequeueReusableCellWithClass:barrageDescriptor.barrageCellClass]; if (!barrageCell) { return; } barrageCell.barrageDescriptor = barrageDescriptor; barrageCell.Clickblock = barrageDescriptor.clickBlock; [self.renderView youpaiffireBarrageCell:barrageCell]; } #pragma mark ------ getter - (YOUPAIOCBarrageRenderView *)renderView { return _renderView; } @end