2015-12-10 2 views
0

У меня есть UIView в моей раскадровке, которые я могу сделать скриншот с помощью следующих действий:Скриншот слоев перед UIView

extension UIView { 

func pb_takeSnapshot() -> UIImage { 
    UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.mainScreen().scale) 

    drawViewHierarchyInRect(self.bounds, afterScreenUpdates: true) 

    let image = UIGraphicsGetImageFromCurrentImageContext() 
    UIGraphicsEndImageContext() 
    return image 
} 

и использовать его как это: let screenShot = exampleView.pb_takeSnapshot()

Но это дает только пустой вид. И включение его в другие представления в диспетчере представлений не работает, конечно. Как сделать снимок экрана надписи с использованием позиции и размера UIView?

ответ

1

Законченное принимая скриншот надтаблицы, используя положение и размер UIView как я предположил ... вместо самого UIView

UIGraphicsBeginImageContextWithOptions(CGSizeMake(exampleView.bounds.size.width, exampleView.bounds.size.height), false, UIScreen.mainScreen().scale) 

self.view.drawViewHierarchyInRect(CGRectMake(-exampleView.frame.origin.x, -exampleView.frame.origin.y, view.bounds.size.width, view.bounds.size.height), afterScreenUpdates: true)