0

我放置PhotoEditPreviewController在自定义视图之上,该视图通过设置透明图像进行初始化。SpriteEditControllerPhotoEditPreviewController用于文本编辑的中有一个。在视图的层次结构中,我可以看到有一个GLKView在 iPhone 6 和 6s 中显示为透明,但在 iPhone 7、8 和 10(X) 上显示为黑色背景。我需要它GLKView是透明的我已经尝试从视图中获取这个 GLView 并设置它的图层和背景颜色。但在这些设备上似乎没有任何效果。

查看层次结构

4

1 回答 1

0

您必须使用PhotoEditPreviewController'sdelegate设置背景颜色。这样的事情应该这样做:

photoEditPreviewController.delegate = self

接着

extension ViewController: PhotoEditPreviewControllerDelegate {
  func photoEditPreviewControllerResetProxyZooming(_ photoEditPreviewController: PhotoEditPreviewController) {
  }

  func photoEditPreviewControllerPreviewEnabled(_ photoEditPreviewController: PhotoEditPreviewController) -> Bool {
    return true
  }

  func photoEditPreviewControllerDidChangePhotoEditModel(_ photoEditPreviewController: PhotoEditPreviewController) {
  }

  func photoEditPreviewControllerPreviewScale(_ photoEditPreviewController: PhotoEditPreviewController) -> CGFloat {
    return 1
  }

  func photoEditPreviewControllerBackgroundColor(_ photoEditPreviewController: PhotoEditPreviewController) -> UIColor {
    // Return the desired background color here.
    return .clear
  }

  func photoEditPreviewControllerProxyZoomingActive(_ photoEditPreviewController: PhotoEditPreviewController) -> Bool {
    return false
  }

  func photoEditPreviewControllerPreviewInsets(_ photoEditPreviewController: PhotoEditPreviewController) -> UIEdgeInsets {
    return .zero
  }

  func photoEditPreviewControllerRenderMode(_ photoEditPreviewController: PhotoEditPreviewController) -> PESDKRenderMode {
    return .all
  }
}
于 2018-04-04T08:58:49.033 回答