|
@@ -20,6 +20,9 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
|
|
|
private let videoURL: URL
|
|
|
|
|
|
+
|
|
|
+ public var isRunloppPlay:Bool = false
|
|
|
+
|
|
|
// MARK: - UI Components
|
|
|
private lazy var playerContainerView: UIView = {
|
|
|
let view = UIView()
|
|
@@ -36,6 +39,8 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
return button
|
|
|
}()
|
|
|
|
|
|
+
|
|
|
+
|
|
|
private lazy var progressSlider: TSProgressSlider = {
|
|
|
let slider = TSProgressSlider()
|
|
|
slider.minimumTrackTintColor = UIColor.themeColor
|
|
@@ -90,7 +95,7 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
|
|
|
// MARK: - Setup
|
|
|
private func setupUI() {
|
|
|
- view.backgroundColor = "#111111".uiColor
|
|
|
+ view.backgroundColor = .clear
|
|
|
playerContainerView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(playPauseTapped)))
|
|
|
view.addSubview(playerContainerView)
|
|
|
playerContainerView.addSubview(playPauseButton)
|
|
@@ -116,8 +121,8 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
controlsContainerView.addSubview(durationLabel)
|
|
|
|
|
|
progressSlider.snp.makeConstraints { make in
|
|
|
- make.leading.equalTo(16)
|
|
|
- make.trailing.equalTo(-16)
|
|
|
+ make.left.equalTo(16)
|
|
|
+ make.right.equalTo(-16)
|
|
|
make.top.equalTo(0)
|
|
|
make.height.equalTo(10)
|
|
|
}
|
|
@@ -134,13 +139,13 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
currentTimeLabel.snp.makeConstraints { make in
|
|
|
make.height.equalTo(13)
|
|
|
make.centerY.equalTo(label)
|
|
|
- make.trailing.equalTo(label.snp.leading)
|
|
|
+ make.right.equalTo(label.snp.left)
|
|
|
}
|
|
|
|
|
|
durationLabel.snp.makeConstraints { make in
|
|
|
make.height.equalTo(13)
|
|
|
make.centerY.equalTo(label)
|
|
|
- make.leading.equalTo(label.snp.trailing)
|
|
|
+ make.left.equalTo(label.snp.right)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -184,17 +189,17 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- @objc private func playPlay() {
|
|
|
+ @objc func playPlay() {
|
|
|
player?.play()
|
|
|
playPauseButton.isHidden = true
|
|
|
-// playPauseButton.setImage(UIImage(named: "pause"), for: .normal)
|
|
|
+ controlsContainerView.isHidden = true
|
|
|
isPlaying = true
|
|
|
}
|
|
|
|
|
|
@objc func playPause() {
|
|
|
player?.pause()
|
|
|
playPauseButton.isHidden = false
|
|
|
-// playPauseButton.setImage(UIImage(named: "play"), for: .normal)
|
|
|
+ controlsContainerView.isHidden = false
|
|
|
isPlaying = false
|
|
|
}
|
|
|
|
|
@@ -206,11 +211,16 @@ class TSAIListVideoPlayerVC: UIViewController {
|
|
|
|
|
|
func playerDidFinish() {
|
|
|
player?.seek(to: CMTime.zero)
|
|
|
- playPauseButton.isHidden = false
|
|
|
-// playPauseButton.setImage(UIImage(named: "play"), for: .normal)
|
|
|
isPlaying = false
|
|
|
progressSlider.value = 0
|
|
|
currentTimeLabel.text = "00:00"
|
|
|
+
|
|
|
+ if isRunloppPlay {
|
|
|
+ player?.play()
|
|
|
+ }else{
|
|
|
+ playPauseButton.isHidden = false
|
|
|
+ controlsContainerView.isHidden = false
|
|
|
+ }
|
|
|
}
|
|
|
// MARK: - Progress Slider
|
|
|
@objc private func sliderValueChanged(_ sender: UISlider) {
|