如何以编程方式拍摄屏幕截图(Swift,SpriteKit)

前端之家收集整理的这篇文章主要介绍了如何以编程方式拍摄屏幕截图(Swift,SpriteKit)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_301_0@ 我尝试了所建议的但输出是一个白色的空白屏幕截图.这让我认为我没有在视图中添加任何内容.这是我如何在我的视图中添加图形. addChild方法附带SpriteKit,它接收SKSpriteNodes:
addChild(background)
    addChild(rate)
    addChild(scoreLabel)
    addChild(share)
    addChild(playAgain)
    addChild(highscoreLabel)
    addChild(scoreBackground)
    addChild(highscoreBackground)

以下是截取屏幕截图的方法

UIGraphicsBeginImageContext(self.view!.bounds.size)
    self.view!.layer.renderInContext(UIGraphicsGetCurrentContext())
    let screenshot = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()
    UIImageWriteToSavedPhotosAlbum(screenshot,nil,nil)

任何的意见都将会有帮助

我认为这个问题可以与这个问题合并
Screenshotting on Iphone in swift only has a white background

这似乎是一样的

编辑:

我想我找到了解决方案.
首先阅读这篇文章How Do I Take a Screen Shot of a UIView?

我创建了一个Extensions.swift文件,其中我使用该链接扩展了UIView的方法.

之后,我只需将以下内容连接到我的精灵工具包按钮

let screenshot = self.view?.pb_takeSnapshot()
UIImageWriteToSavedPhotosAlbum(screenshot,nil)

Voilà,图像在相机胶卷中!

猜你在找的Swift相关文章