/ / Jak udostępniać na Facebooku i Twitterze (Social Framework), robiąc zrzut ekranu z innego ViewController? - ios, facebook, swift, swift2

Jak udostępnić na Facebooku i Twitterze (Social Framework), biorąc zrzut ekranu z innego ViewController? - ios, facebook, swift, swift2

W mojej aplikacji, gdy użytkownik kliknie shareToFacebookprzycisk, potrzebuję mojej aplikacji do zrobienia zrzutu ekranu z innego kontrolera ViewController, który właśnie uzyskał wynik, i udostępnienia go na Facebooku. Tak więc napisałem kod w ten sposób: (Działa całkiem nieźle),:

Teraz mam wątpliwości: aby zrobić zrzut ekranu z innego ViewControllera, który ma wynik, jaki kod powinienem w to wstawić:

@IBAction func sharetoFacebook() {
var sharetoFacebook : SLComposeViewController =
SLComposeViewController(forServiceType:
SLServiceTypeFacebook)
sharetoFacebook.setInitialText("WOW! I scored (rightCounter) right..! Wanna challenge me?")
shareToFacebook.addImage(UIImage(named: "//What should I put here ?"))
self.presentViewController(sharetoFacebook, animated:
true, completion: nil)  }

shareToFacebook.addImage(UIImage(named: "//What should I put here ?"))

Po przeszukaniu znalazłem rozwiązanie takie jak: //I put this code inside the ViewController that I want to take screenshot

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

self.view.drawViewHierarchyInRect(self.view.bounds, afterScreenUpdates: true)

let sreenshotImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return screenshotImage // Im getting error over here: saying: UIImageview not convertible to UIImage
}

Ale potem pojawiły się błędy, takie jak:

Kiedy umieściłem: shareToFacebook.addImage(scoreVC.snapshot()) //Not in the ViewController I want to take screenshot

Wystąpił błąd jako: Im getting missing argument for parameter #1

A dla powyższego kodu func snapshot() -> UIImageView {

Dostaję błąd mówiący UIImageView not convertible to UIImage

Proszę pomóż mi..! Z góry dziękuję..! To byłaby wielka pomoc!

Oto aktualny błąd: wprowadź opis obrazu tutaj

Odpowiedzi:

0 dla odpowiedzi № 1

musisz zadeklarować snapshot do kontrolera widoku wyniku lub, jeśli wolisz, możesz użyć kategorii na UIViewController.

Teraz, gdy chcesz udostępnić obraz, potrzebujesz tylko:

shareToFacebook.addImage(scoreVC.snapshot())