私は宿題を追跡するためのアプリケーションを作成していますが、reloadDataを呼び出すと何らかの理由でそれがうまくいかず、何人かの人がすでにこれについて尋ねていますが、彼らは私のために動作しません、ここで私は新しい宿題を追加ファイルされる:tableView.reloadData()が動作していません
import UIKit
class AddHomework : UIViewController {
@IBOutlet weak var HomeworkNameLbl: UILabel!
@IBOutlet weak var HomeworkNameTxt: UITextField!
@IBOutlet weak var DueDateLbl: UILabel!
@IBOutlet weak var DueDateTxt: UITextField!
@IBOutlet weak var DueTimeLbl: UILabel!
@IBOutlet weak var DueTimeTxt: UITextField!
@IBOutlet weak var AddHomeworkBtn: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
self.hideKeyboardWhenTappedAround()
}
@IBAction func AddHomework(sender: UIButton) {
let HomeworkName = HomeworkNameTxt.text
let DueDate = DueDateTxt.text
let DueTime = DueTimeTxt.text
homeworkTableView().AddObject([DueDate!, DueTime!], HomeworkName: HomeworkName!)
}
func hideKeyboardWhenTappedAround() {5
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(dismissKeyboard))
view.addGestureRecognizer(tap)
}
func dismissKeyboard() {
view.endEditing(true)
}
}
ここでは、私は私のテーブルビューを持っているファイルです。
import UIKit
class homeworkTableView: UIViewController, UITableViewDelegate, UITableViewDataSource{
@IBOutlet weak var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.reloadData()
}
var homework : [String: [String]] = [
"Spanish Test": ["Aug 12", "12:00 AM", "Spanish"],
"Math Sheet": ["Aug 13", "10:30 PM","Math"],
"Code Thing": ["Aug 11","12:00 AM","Coding"]
]
var titles = [
"Spanish Test", "Math Sheet", "Code Thing"
]
func AddObject(newArray: [String], HomeworkName: String){
titles.append(HomeworkName)
homework.updateValue(newArray, forKey: HomeworkName)
print(homework)
print(titles)
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return titles.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let Cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! CustomCell
Cell.Title.text = titles[indexPath.row]
let currentTitle = titles[indexPath.row]
let current = homework[currentTitle]!
Cell.DueDate.text = "Due Date: \(current[0])"
Cell.Class.text = "Due Time: \(current[1])"
self.tableView.rowHeight = 100.00
return Cell
}
}
そして、プロジェクト全体はgitのに掲示されてここ: https://github.com/IndyBob2019/HomeworkHelper
ご協力いただきありがとうございます!
あなたが最新の変更でプロジェクトをアップロードしていないようだ –
(リロードを取る):
は(あなたのアプローチ/実装の知識がなくても)、のような は前に私が提案し
func AddObject(..
内部self.tableView.reloadData()
を削除しますViewDiDLoadの() –