Ios swift第一个简单项目-无法调用对象方法
我读了一些关于swift的教程,并制作了一个简单的计数器应用程序,但我想修改它以保持控制器干净,并将逻辑移到外部类: 在Ios swift第一个简单项目-无法调用对象方法,ios,swift,Ios,Swift,我读了一些关于swift的教程,并制作了一个简单的计数器应用程序,但我想修改它以保持控制器干净,并将逻辑移到外部类: 在ViewController.swift i中有 class ViewController: UIViewController { var counter: Counter? override func viewDidLoad() { super.viewDidLoad() counter = Counter(labe
ViewController.swift i中
有
class ViewController: UIViewController {
var counter: Counter?
override func viewDidLoad() {
super.viewDidLoad()
counter = Counter(label: labelCounter)
counter.renderInit()
}
}
我有柜台:
class Counter: NSObject {
var label: UILabel?
init(label: UILabel) {
self.label = label
}
func renderInit() {
...
}
}
控制器在线counter.renderInit()
中出现错误消息:
“Counter?”没有名为“renderInit”的成员请将
Counter.renderInit()更改为以下内容之一:
counter?.renderInit()
counter!.renderInit()
计数器?
是可选类型。你需要打开它。如果计数器
为零,则执行?
将忽略该方法,并且代码>将强制它展开,如果它不存在,则抛出错误
查看有关选项的更多信息。好的,我向前移动了一步,发现调用方法对象有另一个问题
class Counter: NSObject {
var label: UILabel?
init(label: UILabel) {
self.label = label
}
func renderInit() {
label?.text = String(counter)
}
}
我得到“无法分配到此表达式的结果。”(对于要将数字转换为字符串的行,为文本添加标签
我阅读了文档和一些教程,但在学习新事物的过程中,以类似的方式看待示例是很好的。不幸的是,Swift是一门年轻的语言,示例并不多。(我是Ruby语言程序员).可能是真棒的副本,谢谢。我以前看过文档,我知道这是可选类型,但我找不到类似的示例。