// // SPPlayerListViewModel.swift // ShortPlay // // Created by 曾觉新 on 2025/4/9. // import UIKit class SPPlayerListViewModel: NSObject { @objc dynamic var isPlaying: Bool = true private var _currentPlayer: SPPlayerProtocol? var currentPlayer: SPPlayerProtocol? { set { _currentPlayer?.isCurrent = false _currentPlayer?.pause() _currentPlayer = newValue _currentPlayer?.playerFinishHadle = { [weak self] in self?.handlePlayFinish?() } _currentPlayer?.isCurrent = true } get { return _currentPlayer } } private(set) var speed: SPSpeedModel.Speed = .x1 ///设置倍速播放 func setSpeedPlay(speed: SPSpeedModel.Speed) { self.speed = speed currentPlayer?.rate = speed.getRate() } ///点暂停或播放 var handlePauseOrPlay: (() -> Void)? ///播放完成 var handlePlayFinish: (() -> Void)? ///选集 var handleEpisode: (() -> Void)? }