2 votes

Affichage d'une Live Photo, swift

J'ai la classe ViewController suivante que j'essaie de faire afficher une photo en direct. Je ne suis pas précisément sûr de comment faire en sorte que l'image s'affiche. En traitant avec un UIImageView, j'écrirais quelque chose comme ceci :

let image = UIImage(imageNamed: "someStringPointingToImage") // puis ajoutez ceci à l'image affichée.

Mais est-ce que quelqu'un sait comment ça fonctionne avec une image en direct que j'ai ajoutée dans mes ressources ?

La fonction

import UIKit
import Photos;
import PhotosUI
import MobileCoreServices

class ViewController: UIViewController, PHLivePhotoViewDelegate {

    var livePhotoIsAnimating = Bool()

    override func viewDidLoad() {
        super.viewDidLoad()

        self.livePhotoView()
    }

    //MARK: Créer la vue Live Photo
    func livePhotoView() {

        let photoView: PHLivePhotoView = PHLivePhotoView.init(frame: self.view.bounds)
        //%%%%%%% Zone pour ajouter l'image %%%%%%
        photoView.contentMode = .ScaleAspectFill

        self.view.addSubview(photoView)
        self.view.sendSubviewToBack(photoView)

    }

    func livePhotoView(livePhotoView: PHLivePhotoView, willBeginPlaybackWithStyle playbackStyle: PHLivePhotoViewPlaybackStyle) {

        self.livePhotoIsAnimating = true

    }

    func livePhotoView(livePhotoView: PHLivePhotoView, didEndPlaybackWithStyle playbackStyle: PHLivePhotoViewPlaybackStyle) {

        self.livePhotoIsAnimating = false

    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Libérer les ressources qui peuvent être recréées.
    }

}

Merci.

2voto

rickster Points 19870

Les Live Photos sont une construction de l'application Photos. Le seul endroit où vous pouvez obtenir une Live Photo est à partir du framework Photos (qui, à son tour, l'obtient à partir de la bibliothèque de photos de l'utilisateur). Il n'y a pas de moyen de stocker des Live Photos en tant que ressources de bundle dans votre application.

Si vous souhaitez présenter des images animées, utilisez simplement les constructeurs UIImage qui créent des images animées à partir d'un ensemble de cadres, et affichez-les dans un UIImageView. Ajoutez vos propres gestes de reconnaissance et vous pouvez facilement créer une interface utilisateur qui présente une image fixe par défaut et une image animée lorsqu'elle est tapée / pressée / etc.

Si vous souhaitez présenter une vidéo, jetez un coup d'œil à AVKit.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X