1

ActivityViewControllerを使用してボタンのタップでQR画像を共有します。Swift:UIActivityViewControllerを使用して画像を共有する

@IBAction func btnShareQRCode_Clicked(sender: UIButton) { 
     self.shareQRCodeUsingActivityViewController(self.imageviewQRCode.image!) 
    } 

func shareQRCodeUsingActivityViewController(imageParamater: UIImage) { 
     let activityItem: [UIImage] = [imageParamater as UIImage] 

     let objActivityViewController = UIActivityViewController(activityItems: activityItem as [UIImage], applicationActivities: nil) 
     objActivityViewController.excludedActivityTypes = [UIActivityTypeAirDrop, UIActivityTypeAddToReadingList] 

     // objActivityViewController.popoverPresentationController?.sourceView = sender 
     self.presentViewController(objActivityViewController, animated: true, completion: { 
      objActivityViewController.completionWithItemsHandler = { activity, success, items, error in 

       if !success { print("cancelled") 
        return 
       } 

       if activity == UIActivityTypeMail { 
        print("mail") 
       } 
       else if activity == UIActivityTypeMessage { 
        print("message") 
       } 
       else if activity == UIActivityTypeSaveToCameraRoll { 
        print("camera") 
       } 
      } 
     }) 
    } 

    func completionHandler() { 
    } 

これで問題は、それがMailComposerに関するエラーを知らせるメールに墜落なっていることである:以下

Screenshot 1

は、私が使用したコードです。

これらのMailComposer機能をどのように処理する必要があるのか​​を知りたいですか?

答えて

1

これをiOSシミュレータで実行している場合、メールコンポーネントは失敗する可能性があります。

それ以外では、あなたの活動項目リストをUIImageとする必要はありません。オブジェクトの配列をactivityItems配列として配置するだけです。

関連する問題