사용자가 공유를 클릭 할 수있게 해주는 기능을 내 전화기에서 사용하고 싶습니다. 그러면 친구에게 기본적으로 그림이 포함 된 메시지를 보낼 수 있습니다. 앱 (사용자가 공유하기 바로 직전). 이 작업을 수행하는 방법을 알아낼 수는 없지만 휴대 전화의 사진 보관함이나 카메라로 이미지를 공유하는 방법에 대한 자습서/답변을 얻을 수 있습니다. 이 작업을 수행하는 방법에 대한 아이디어! 사용자가 공유 안타 전에iOS/swift의 현재 화면 공유 스크린 샷을 받으십시오.
1
A
답변
2
// 먼저 필요합니다, 화면을 공유하려면
UIGraphicsBeginImageContext(view.frame.size)
view.layer.renderInContext(UIGraphicsGetCurrentContext())
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
// 공유하는 스크린 샷에서 이미지
var imagesToShare = [AnyObject]()
imagesToShare.append(image)
let activityViewController = UIActivityViewController(activityItems: imagesToShare , applicationActivities: nil)
activityViewController.popoverPresentationController?.sourceView = self.view
presentViewController(activityViewController, animated: true, completion: nil)
3
UIGraphicsBeginImageContext(self.view.bounds.size)
self.view.drawHierarchy(in: view.bounds, afterScreenUpdates: false)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
+0
이 코드를 사용하여 uiimage를 가져 오면 공유를 진행할 수 있습니다. –
1
을 이미지를 만들 수 있습니다 화면의보기를 이미지로 변경하고 공유 할 수 있습니다.
이미지로보기를 변경하려면 코드에이 확장명을 추가하면됩니다.
//UIView extension which converts the UIView into an image.
extension UIView {
func toImage() -> UIImage {
UIGraphicsBeginImageContextWithOptions(bounds.size, false, UIScreen.mainScreen().scale)
drawViewHierarchyInRect(self.bounds, afterScreenUpdates: true)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return image
}
}
예를 들어, 거기의 ViewController의 관점을 통과 :이 당신을 도움이되기를 바랍니다
let imageToShare = self.view.toImage()
let activityItems : NSMutableArray = []()
activityItems.addObject(imageToShare)
let activityVC = UIActivityViewController(activityItems:activityItems as [AnyObject] , applicationActivities: nil)
self.presentViewController(activityVC, animated: true, completion: nil)
합니다.
스크린 샷 기능이 이미 모든 iPhone에 있습니다. 따라서 스크린 샷을 찍어 공유하십시오. – KAR