Swift

Exposer la vue de la racine pour une capture en plein écran

Pour capturer l'intégralité de l'écran de l'application, vous devez accéder à la racine. UIView. Ajouter une extension :

UIApplication+rootViewController.swift

Ensuite, utilisez :

Autre solution : Capturer une région spécifique avec UIViewRepresentable

Dans les étapes suivantes, nous vous montrerons comment connecter le rootView au ScreenCapturer. Cependant, si vous préférez capturer une région spécifique de l'écran, vous pouvez capturer une image spécifique de l'écran. UIView soutenu par SwiftUI. Créer un UIViewRepresentable qui produit la vue que vous souhaitez partager, intégrez-la dans votre mise en page et transmettez-lui son contenu sous-jacent UIView au capteur (par exemple, par le biais d'un rappel lorsque l'option makeUIView fonctionne).

Exemple : une étiquette temporelle à partager :

Affichage TimeLabelView dans SwiftUI et de câbler son UIView dans votre gestionnaire (par exemple via @State et un onAppear / Coordinator), puis transmet cette vue à ScreenCapturer(withView:) pour ne partager que cette région au lieu de l'écran complet.