Ansicht und Modifikator, die durch den Import verschiedener Frameworks zusätzlich zu SwiftUI verwendet werden können.
MapKit
Sie können Map
verwenden.
import SwiftUI
import MapKit
struct SwiftUIView: View {
@State var region: MKCoordinateRegion
var body: some View {
Map(coordinateRegion: $region)
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
let initialCoordinate = CLLocationCoordinate2DMake(40,40)
let span = MKCoordinateSpan(latitudeDelta: 0.5, longitudeDelta: 0.5)
let region = MKCoordinateRegion(center: initialCoordinate, span: span)
return SwiftUIView(region: region)
}
}
SpriteKit
Sie können SpriteView verwenden.
Die GameScene
-Datei wird verwendet, als das Xcode-Projekt mit Multiplatform erstellt wurde.
import SwiftUI
import SpriteKit
struct SwiftUIView: View {
let scene: SKScene
var body: some View {
SpriteView(scene: scene)
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
guard let scene = SKScene(fileNamed: "GameScene") as? GameScene else {
abort()
}
scene.scaleMode = .aspectFit
return SwiftUIView(scene: scene)
}
}
AuthenticationServices Sie können "SignInWithAppleButton" verwenden.
import SwiftUI
import AuthenticationServices
struct SwiftUIView: View {
var body: some View {
SignInWithAppleButton(.continue) { _ in
} onCompletion: { _ in
}
.frame(width: 300.0, height: 44.0)
.signInWithAppleButtonStyle(.black)
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView()
}
}
StoreKit
Sie können appStoreOverlay
verwenden.
import SwiftUI
import StoreKit
struct SwiftUIView: View {
@State var showOverlay:Bool = false
var body: some View {
Button("App Store Overlay") {
self.showOverlay.toggle()
}
.appStoreOverlay(isPresented: $showOverlay) {
SKOverlay.AppConfiguration(appIdentifier: "687721425", position: .bottom)
}
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
return SwiftUIView()
}
}
AVKit Sie können "VideoPlayer" verwenden. In dem Dokument heißt es: "Eine Ansicht, in der der Videoinhalt eines Player-Objekts zusammen mit den vom System bereitgestellten Wiedergabesteuerelementen angezeigt wird." Bei tvOS scheint es jedoch kein Steuerelement zu geben.
import SwiftUI
import AVKit
struct SwiftUIView: View {
let player: AVPlayer?
var body: some View {
VideoPlayer(player: player)
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
return SwiftUIView(player: AVPlayer(url: URL(string: "http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8")!))
}
}
SceneKit Sie können "SceneView" verwenden. Bitte bereiten Sie Ihre eigene scn-Datei vor.
import SwiftUI
import SceneKit
struct SwiftUIView: View {
let scene: SCNScene?
var body: some View {
SceneView(scene: scene)
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
let scene = SCNScene(named: "Scene.scn")
return SwiftUIView(scene: scene)
}
}
HomeKit Sie können "CameraView" verwenden. Sie benötigen "HMCameraSource", aber es ist wahrscheinlich nicht in der SwiftUI-Vorschau verfügbar. Überprüfen Sie es daher selbst.
import SwiftUI
import HomeKit
struct SwiftUIView: View {
let cameraSource:HMCameraSource
var body: some View {
CameraView(source: cameraSource)
}
}
WatchKit Sie können "NowPlayingView" verwenden.
import SwiftUI
import WatchKit
struct SwiftUIView: View {
var body: some View {
NowPlayingView()
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView()
}
}
Lass es uns benutzen! HomeKit!
Recommended Posts