如何从 RPScreenRecorder 获取视频或添加分享按钮?

How can I get the video from RPScreenRecorder or add a share button?

我正在使用 RPScreenRecorder.shared().startRecording 录制视频。但是,我想让用户在应用内分享视频。这是在视图控制器中停止录制和预览视频并为用户提供保存到照片或取消的选项的代码。

我不知道如何从视图控制器视图中抓取视频。当我深入研究子视图时:preview.view.subviews.first!.subviews.first! 有一个类型的视图:UIRemoteView 没有子视图。

视频能抢到吗?或者更好的是,有没有办法显示 UIActivityViewController 以允许用户分享视频?

对于 macOS 我可以 preview.mode = .share,但是对于 iOS 这不可用。

RPScreenRecorder.shared().stopRecording { preview, error in
    guard let preview = preview else { return }
    self.present(preview, animated: true, completion: nil)
}

有一个共享按钮,但它不可见,如果视图控制器未全屏显示,我认为这是与 PRPreviewViewController 相关的错误。

您可以更改 modalTransitionStyle 并查看分享按钮。

RPScreenRecorder.shared().stopRecording { preview, error in
    guard let preview = preview else { return }
    preview.modalPresentationStyle = .overFullScreen
    self.present(preview, animated: true, completion: nil)
}