#ios #swift
#iOS #swift
Вопрос:
Я создаю приложение календаря в Swift. У него проблема с sigabrt 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!
}
}
}
}
}
Комментарии:
1. Пожалуйста, исправьте отступ вашего кода, чтобы его было легче читать.
2. @GinoMempin Здесь гораздо больше ошибок, чем отступ. Существуют неуместные и дополнительные фигурные скобки.
Ответ №1:
Похоже, ваш код не завершен.
Похоже, что вы хотите добавить элемент в wydarzenia
массив при нажатии одной из кнопок, в этом случае вам нужно будет написать
wydarzenia.append("Something")
Ответ №2:
Ваш код здесь кажется неполным:
wydarzenia.append (input: String).
Вы определили wydarzenia
как массив, а метод добавления массива не имеет input
именованного параметра. Вот что означает ошибка, для которой вы указали «дополнительный» параметр append
.
добавить (_:)
Добавляет новый элемент в конец массива.
func append(_ newElement: Element)
Вы можете просто сделать:
wydarzenia.append(thingThatYouWantToAppend)
что, из вашего примера, может быть строковым значением UITextField
?:
wydarzenia.append(input.text)
Для получения дополнительной информации о том, как использовать массивы, ознакомьтесь с примерами из документации по массиву, например, с добавлением элементов в массив:
var students = ["Ben", "Ivy", "Jordell"]
students.append("Maxime")
В общем, для отладки вашего приложения вы можете вставлять точки останова, а затем пошагово просматривать свой код построчно, пока не выясните, какая строка вызывает проблему.
См. Раздел «Инструменты отладки» в документах Apple для разработчиков.