从相机视图中截取屏幕截图

时间:2016-12-20 09:47:44

标签: ios objective-c swift xcode cocoa-touch

更新

我正在使用sinch库在我的应用中进行视频通话。 我在视频通话期间按下了整个屏幕截图:

   @IBAction func photoAction(_ sender: Any) {

    let result = UIImage(view: self.videoView)
    UIImageWriteToSavedPhotosAlbum(result, nil, nil, nil)

    let result2 = UIImage(view: self.videoController!.localView())
    UIImageWriteToSavedPhotosAlbum(result2, nil, nil, nil)

}
  

call是SINClient
   videoController是SINVideoController
  localView是UIView,相机视图

屏幕截图功能正常但相机视图未出现在屏幕截图中。

例如,以编程方式显示此屏幕截图self.view:  enter image description here

这个屏幕截图应该如何: enter image description here

这个问题的通讯和我看到很多用户遇到相同的问题,他们无法截取相机视图的截图,但没有给出有用的答案。

2 个答案:

答案 0 :(得分:1)

如果我想触发一个简单的屏幕截图,我通常会使用此代码:

    Observable observable = Observable.error(new RuntimeException());
    TestSubscriber testSubscriber = TestSubscriber.create();

    observable.subscribe(testSubscriber);

    testSubscriber.assertTerminalEvent();
    testSubscriber.assertError(RuntimeException.class);

我想这对你的问题也适用

答案 1 :(得分:0)

要解决这个问题,我要将视频通话摄像头从后置摄像头切换到前置摄像头,以便用户可以使用后置摄像头拍照,一旦完成拍照,我就将视频通话切换回后置摄像头。