OCBarrageManager.m 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. //
  2. // OCBarrageView.m
  3. // TestApp
  4. //
  5. // Created by QMTV on 2017/8/22.
  6. // Copyright © 2017年 LFC. All rights reserved.
  7. //
  8. #import "OCBarrageManager.h"
  9. @implementation OCBarrageManager
  10. - (void)dealloc {
  11. NSLog(@"%s", __func__);
  12. [_renderView stop];
  13. }
  14. - (instancetype)init {
  15. self = [super init];
  16. if (self) {
  17. _renderView = [[OCBarrageRenderView alloc] init];
  18. }
  19. return self;
  20. }
  21. - (void)start {
  22. [self.renderView start];
  23. }
  24. - (void)pause {
  25. [self.renderView pause];
  26. }
  27. - (void)resume {
  28. [self.renderView resume];
  29. }
  30. - (void)stop {
  31. [self.renderView stop];
  32. }
  33. - (void)renderBarrageDescriptor:(OCBarrageDescriptor *)barrageDescriptor {
  34. if (!barrageDescriptor) {
  35. return;
  36. }
  37. if (![barrageDescriptor isKindOfClass:[OCBarrageDescriptor class]]) {
  38. return;
  39. }
  40. OCBarrageCell *barrageCell = [self.renderView dequeueReusableCellWithClass:barrageDescriptor.barrageCellClass];
  41. if (!barrageCell) {
  42. return;
  43. }
  44. barrageCell.barrageDescriptor = barrageDescriptor;
  45. [self.renderView fireBarrageCell:barrageCell];
  46. }
  47. #pragma mark ------ getter
  48. - (OCBarrageRenderView *)renderView {
  49. return _renderView;
  50. }
  51. @end