Я пишу короткое приложение в Swift, которое имеет два экрана. На первом экране пользователь вводит данные и сохраняет их, затем на втором экране данные отображаются в виде tableView
. Однако я не могу заставить tableView
адаптироваться к измененному array
.
Я оглянулся и, кажется, не могу найти решение, однако я новичок в этом, поэтому я могу искать не в том месте.
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableview.dequeueReusableCell(withIdentifier: "cellId", for: indexPath) as! BunchOfCells
cell.backgroundColor = UIColor(red: 1, green: 1, blue: 1, alpha: 0)
tableview.backgroundColor = UIColor(red: 1, green: 1, blue: 1, alpha: 0)
if tasks.count != 0 {cell.label.text = tasks[indexPath.item]["Title"]}
return cell
}
func createTask(){
let decider = UserDefaults.standard.object(forKey: "buttonPressed") as? Bool
if (decider == true){
let nameOfTask = UserDefaults.standard.object(forKey: "taskName") as! String
let importanceOfTask = UserDefaults.standard.object(forKey: "importance") as! String
let dateOfTask = UserDefaults.standard.object(forKey: "taskDate") as! String
let desOfTask = UserDefaults.standard.object(forKey: "taskDescription") as! String
taskInfo["Title"] = nameOfTask
taskInfo["Importance"] = importanceOfTask
taskInfo["Date"] = dateOfTask
taskInfo["Description"] = desOfTask
tasks.append(taskInfo)
print(tasks)
}
var tasks: [[String:String]] = [] as Array
var taskInfo: [String:String] = ["Title":"", "Importance":"", "Date":"", "Description":""]
let tableview: UITableView = {
let tv = UITableView()
tv.translatesAutoresizingMaskIntoConstraints = false
tv.separatorColor = UIColor.white
return tv
}()
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let NumOfCell = tasks.count
return NumOfCell
}
tasks
- это array
, хранящий кратное число dictionaries
с аналогичным содержимым.
Моя проблема в том, что при добавлении другого dictionary
к array
cells
в табличном представлении не изменяется. Любая помощь будет оценена :)