[SWIFT] Partagez-le avec votre histoire Instagram!

Partagez-le avec votre histoire Instagram!

Ce que vous pouvez apprendre cette fois

L'image terminée ressemble à ceci!

Côté application Histoire d'Instagram

L'image et le libellé sont affichés dans la vue, et la vue est convertie en image et transmise à l'histoire Instagram.

Obtenir la date et l'heure

Cette fois, la date est affichée de sorte qu'il est facile de confirmer que la valeur a changé lorsqu'elle est affichée. L'ajout de variables telles que le nom d'utilisateur à Label facilitera la conception d'Instagram.

ViewController.swift


@IBOutlet weak var dateLable: UILabel!   //Connectez-vous avec Storyboard Label
//------------------------------------------------------
//super.viewDidLoad()Décrit dans
let format = DateFormatter()
format.timeStyle = .medium
format.dateStyle = .long
format.locale = Locale(identifier: "ja_JP")
let date = Date()
 dateLable.text = format.string(from: date)

Convertir la vue en UIImage

Connectons la vue créée avec Storyboard au ViewController en utilisant @IBOutle! Après la connexion, étendez UIView et ajoutez le code suivant pour appeler l'image = part au moment que vous souhaitez convertir.

ViewController.swift


@IBOutlet weak var screensShotView: UIView!   //Connectez-vous avec la vue Storyboard
//------------------------------------------------------
//Ajoutons le code suivant en tant qu'extension de UIVIew.
//view.asImage()Vous pouvez convertir la vue en image à tout moment avec.
extension UIView {
    //Code pour convertir UIView en UIImage
    func asImage() -> UIImage {
        let renderer = UIGraphicsImageRenderer(bounds: bounds)
        return renderer.image { rendererContext in
            layer.render(in: rendererContext.cgContext)
        }
    }
}

//view.asImage()Vous pouvez le convertir en UIImage avec. Il est préférable de l'appeler lorsque le bouton est enfoncé.
let image = screensShotView.asImage()

Partager des images sur l'histoire Instagram

Pour une liste détaillée des programmes Instagram, voir Documents officiels.

ViewController.swift


private func setupOpenInstagram() {
        let image = screensShotView.asImage()
        let items: [[String: Any]] = [[
            "com.instagram.sharedSticker.stickerImage": image,
            "com.instagram.sharedSticker.backgroundTopColor": "#000000",
            "com.instagram.sharedSticker.backgroundBottomColor": "#FFFFFF"
        ]]
        UIPasteboard.general.setItems(items, options: [:])
        guard let shareInstagramStoryURL = "instagram-stories://share".convertURL else { return }
        UIApplication.shared.open(shareInstagramStoryURL, options: [:], completionHandler: nil)
    }

Le matériel est une image d'un magasin d'illustrations. https://www.irasutoya.com/2019/04/blog-post_34.html

Vérifiez si vous disposez d'une clé de schéma pour une application particulière. https://qiita.com/nagaoyuriko/items/67c5e262f6e88cd88885

Recommended Posts

Partagez-le avec votre histoire Instagram!
Une histoire bloquée avec NotSerializableException