2016-08-02 20 views
0

enter image description hereenter image description here In meinem IOS App Code Ich mache einen Screenshot von UIimageView, aber wenn ich es nehme, wird es nicht richtig mit dem folgenden Code genommen.screenshot ist nicht in der richtigen Größe IOS

func captureView() -> UIImage { 
//  let rect: CGRect = self.imageView.bounds 

     UIGraphicsBeginImageContextWithOptions(imageView.bounds.size, false, 0.0)//add this line 

     let context: CGContextRef = UIGraphicsGetCurrentContext()! 
     self.view.layer.renderInContext(context) 
     let img: UIImage = UIGraphicsGetImageFromCurrentImageContext() 
     UIGraphicsEndImageContext() 
     return img 
    } 

Ich möchte die exect Bildschirmaufnahme des Bildes in ImageView, weil es mehr Bilder darauf sind. Bitte mich richtigen Code vorschlagen genaue UIImageView Screenshot

+0

füge ich die exect Screenshot des Bildes in Imageview wollen, weil es mehr Bilder auf sie sind. Means zeigen mir Screenshots –

+0

Es ist einfach imageView .. Ich möchte die Aufnahme machen .. – JAck

+0

Nur Imageview nicht insgesamt Bildschirm –

Antwort

0

für immer Wie über Sie UIScreen.mainScreen().scale statt 0.0 in UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.mainScreen().scale)

func captureView() -> UIImage { 
      UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.mainScreen().scale) 
      drawViewHierarchyInRect(bounds, afterScreenUpdates: true) 
      let img = UIGraphicsGetImageFromCurrentImageContext() 
      UIGraphicsEndImageContext() 
      return img! 
     } 
+0

was ist draw ViewHierchyinRect() – JAck

+0

Bitte überprüfen Sie [diese] (https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIView_Class/#//apple_ref/occ/instm/UIView/ drawViewHierarchyInRect: afterScreenUpdates :) – Rurouni

+0

Ich frage nach Ihrer Methode. drawViewHierarchyInRect (bounds, afterScreenUpdat es: true) – JAck