можно ли конвертировать контент UIView в видео с помощью Replaykit? - PullRequest
0 голосов
/ 06 августа 2020

Я выполнил простую задачу записи полноэкранного режима с помощью ReplayKit:

import UIKit
import ReplayKit

class ViewController: UIViewController {

    @IBOutlet weak var containerView: UIView!
    @IBOutlet weak var movingView: UIView!
    
    let recorder = RPScreenRecorder.shared()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        movingView.transform = CGAffineTransform(scaleX: 1.5, y: 1.5)
        
        UIView.animate(withDuration: 0.5, delay: 0, options: [.autoreverse, .repeat], animations: {
            self.movingView.transform = .identity
        }, completion: nil)
    }

    @IBAction func startAction(_ sender: UIButton) {
        recorder.startRecording { (error) in
            if let error = error {
                print(error.localizedDescription)
            }
        }
    }
    @IBAction func stopAction(_ sender: UIButton) {
        recorder.stopRecording { [weak self] previewWC, error in
            if let previewVC = previewWC {
                previewVC.previewControllerDelegate = self
                self?.present(previewVC, animated: true)
            }
            
            if let error = error {
                print(error.localizedDescription)
            }
        }
    }
}

extension ViewController: RPPreviewViewControllerDelegate {
    func previewControllerDidFinish(_ previewController: RPPreviewViewController) {
        dismiss(animated: true)
    }
}

*** Могу ли я как-нибудь записать часть экрана? Я не нашел элегантного решения, чтобы взять контент и преобразовать его в видео ***

...