gpt4 book ai didi

ios - 无法调用 ViewController() 的方法

转载 作者:搜寻专家 更新时间:2023-11-01 06:58:37 29 4
gpt4 key购买 nike

我只是想在 ViewController 类中创建一个方法并能够调用它。

这是我的代码(我记下了我尝试调用它的两种方式,以及我遇到的错误):

import UIKit

class ViewController: UIViewController{
func sayHi(name: String){
print("Hi \(name)")
}
}

/*
let viewcontroller = ViewController()
viewcontroller.sayHi(name: "Bob")
*/

//Error: Expressions are not allowed at the top level

/*
ViewController.sayHi(name: "Bob")
*/

//Error: Expressions are not allowed at the top level
//Error: Instance member 'sayHi' cannot be used on type 'ViewController'; did you mean to use a value of this type instead?

正如您在评论中看到的那样,我尝试将 sayHi 作为类型方法和实例方法来调用。都没有用。我最终将创建一个可以从文本输入中获取输入并对其进行操作的函数。 ViewController.swift 甚至是执行此操作的正确文件吗?如果是这样,我该如何调用我定义的方法?

最佳答案

将在 appDelegate 中有这个委托(delegate),当您的应用程序启动时将调用它。在那里创建您的 viewController 并将其添加到 window

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
window = UIWindow(frame: UIScreen.main.bounds)
window?.makeKeyAndVisible()
let viewController = ViewController()
window?.rootViewController = viewController
viewController.sayHi()
return true
}

关于ios - 无法调用 ViewController() 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51932431/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com