Я новичок в Swift и пытаюсь создать простой класс Cat.swift, а затем передать класс в мой файл SceneDelegate, который затем передает его в мой файл ContentView.
однако я получаю сообщение об ошибке «Аргумент передан в вызов без аргументов», и сборка продолжает давать сбой.
Я также прикреплю изображения для ясности SceneDelegate.swift Cat.swift ContentView.swift
Код Cat.swift
class Cat {
var breed: String = ""
var personality: String = ""
var colour: String = ""
var characterisitics: String = ""
init(bre: String, pers: String, col: String, chars: String) {
breed = bre
personality = pers
colour = col
characterisitics = chars
}
}
Код SceneDelegate.swift
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var window: UIWindow?
let cat = Cat(bre: "ooo", pers: "ppp", col: "ppp", chars: "ppp")
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
let contentView = ContentView(cat: cat)
if let windowScene = scene as? UIWindowScene {
let window = UIWindow(windowScene: windowScene)
window.rootViewController = UIHostingController(rootView: contentView)
self.window = window
window.makeKeyAndVisible()
}
}
Файл ContentView.swift
import SwiftUI
struct ContentView: View {
var body: some View {
Text("bugggggy\(cat.bre)")
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView(cat: Cat(bre: "p", pers: "p", col: "p", chars: "p"))
}
}