我正在Swift中构建日历应用程序。它有一个可怕的THREAD1问题和一个奇怪的错误。
代码如下:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
var wydarzenia = ["Wydarzenie1", "Wydarzenie2" ]
weak var input: UITextField!
weak var output: UILabel!
print(wydarzenia)
func show(_ sender: UIButton) {
print(wydarzenia)
}
func add(_ sender: UIButton) {
wydarzenia.append (input: String). !Extraneous argument label 'input:' in call!
}
}
}
}
}
答案 0 :(得分:0)
看起来您的代码不完整。
似乎您想在单击其中一个按钮时将元素添加到function filterUnderscoreKeys(arr) {
return arr.map(obj => {
const res = {};
Object.keys(obj)
.filter(k => k[0] !== '_')
.forEach(k => res[k] = obj[k]);
return res;
});
}
数组中,在这种情况下,您需要编写
wydarzenia
答案 1 :(得分:0)
您的代码似乎不完整:
wydarzenia.append (input: String).
您将wydarzenia
定义为Array,并且数组的append方法没有名为input
的参数。这就是错误的含义,您为append
提供了“额外”参数。
附加(_:)
在数组的末尾添加一个新元素。
func append(_ newElement: Element)
您可以简单地做到:
wydarzenia.append(thingThatYouWantToAppend)
在您的示例中,哪个可能是the String value of the UITextField
?:
wydarzenia.append(input.text)
有关如何使用数组的更多信息,请查看Array文档中的示例,例如将元素添加到数组中的示例:
var students = ["Ben", "Ivy", "Jordell"]
students.append("Maxime")
通常,要调试应用程序,可以插入断点,然后逐行逐步执行代码,直到找出引起问题的行。
请参阅Apple开发人员文档中的Debugging Tools部分。