2017-01-27 7 views
0

画面上にない別のビューコントローラの一部であるビューのスクリーンショットを撮る必要があります。画面に表示されていないVCのスクリーンショット

私はそのVCを作成し、それを正しいデータで埋め、レンダリングしてからスクリーンショットを撮る必要があると信じています。どうすればいいですか?

これは、ターゲットVCからのviewDidLoadを()トリガされた私の現在のコードですが、空白の画像を生成している:

let storyboard = UIStoryboard(name: "Main", bundle: nil) 
    let vc = storyboard.instantiateViewController(withIdentifier: "ShareVC") as! ShareTransactionViewController 
    vc.transaction = self.transaction 

    vc.view.drawHierarchy(in: self.view.bounds, afterScreenUpdates: false) 

    UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, true, 0.0) 

    let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()! 
    UIGraphicsEndImageContext() 

    let imageToShare = [ image ] 

は、私が見つけることができたいくつかの仕事の後、事前

答えて

0

にありがとう解決策、それは最高のものではないかもしれないので、誰かがより良いアプローチを持っていれば私はそれを感謝します。

現在のビューコントローラにビューを追加しました。ターゲットビューを追加できました。イメージをキャプチャして、追加したビューを削除して、現在のVCが同じように見えるようにします。

+0

ビューコントローラのビューを取得して、それをスーパービューに埋め込むのは、子ビューコントローラ "ダンス"を実行しなくてもかまいません。 – matt

+0

@mattあなたのコメントをどのように取るかわからない、私がやったことが「正しい」、あるいは私がやっていることが「違法」であると言っているのだろうか? – ur3k

関連する問題