LWPlayerDelegate.swift 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // LWPlayerDelegate.swift
  3. // SwiftBilibili
  4. //
  5. // Created by 罗文 on 2021/3/28.
  6. // Copyright © 2021年 罗文. All rights reserved.
  7. //
  8. import UIKit
  9. public protocol LWPlayerDelegate : AnyObject {
  10. func player(_ player: LWPlayer ,playerStateDidChange state: LWPlayerState)
  11. func player(_ player: LWPlayer ,playerDisplayModeDidChange displayMode: LWPlayerDisplayMode)
  12. func player(_ player: LWPlayer ,loadedTimeDidChange bufferDuration: TimeInterval, totalDuration: TimeInterval)
  13. func player(_ player: LWPlayer ,playedTimeDidChange currentTime: TimeInterval, totalDuration: TimeInterval)
  14. func player(_ player: LWPlayer ,showLoading: Bool)
  15. }
  16. public protocol LWPlayerHorizontalPan: AnyObject {
  17. func player(_ player: LWPlayer ,progressWillChange value: TimeInterval)
  18. func player(_ player: LWPlayer ,progressChanging value: TimeInterval)
  19. func player(_ player: LWPlayer ,progressDidChange value: TimeInterval)
  20. }
  21. public protocol LWPlayerGestureRecognizer: AnyObject {
  22. func player(_ player: LWPlayer ,singleTapGestureTapped singleTap: UITapGestureRecognizer)
  23. func player(_ player: LWPlayer ,doubleTapGestureTapped doubleTap: UITapGestureRecognizer)
  24. }
  25. public protocol LWPlayerCustomAction: AnyObject {
  26. var player: LWPlayer? { get set }
  27. var autoHidedControlViews: [UIView] { get set }
  28. func playPauseButtonPressed(_ sender: Any)
  29. func fullEmbeddedScreenButtonPressed(_ sender: Any)
  30. func audioSubtitleCCButtonPressed(_ sender: Any)
  31. func backButtonPressed(_ sender: Any)
  32. }
  33. public protocol LWPlayerCustom: LWPlayerDelegate,LWPlayerCustomAction,LWPlayerHorizontalPan,LWPlayerGestureRecognizer {
  34. }