【发布时间】:2019-12-05 15:30:48
【问题描述】:
我想使用 CoreData 制作一个应用程序。 我制作了表格视图并添加了视图控制器以将数据添加到 Core Data 和表格视图以检索数据,一切正常。但是当我从添加视图控制器插入一个新行到表视图时,它将进入表视图的底部。我想让它插入表格视图的顶部。我尝试了来自 Internet 的不同代码,但没有一个适用于我的代码。
这是表视图控制器:
var List: [NSManagedObject] = []
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .white
// Configure Table View...
tableView.separatorColor = .clear
}
override func viewDidAppear(_ animated: Bool) {
let application: AppDelegate = UIApplication.shared.delegate as! AppDelegate
let context = application.persistentContainer.viewContext
let get = NSFetchRequest<NSManagedObject>(entityName: "Entity")
List = try! context.fetch(get)
tableView.reloadData()
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return List.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MainCell", for: indexPath) as! MainTableViewCell
let data: NSManagedObject = List[indexPath.row]
cell.objectName.text = data.value(forKey: "objectName") as? String
cell.objectPlace.text = data.value(forKey: "placeName") as? String
return cell
}
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 180
}
【问题讨论】:
-
您想先显示最后添加的项目,最后显示第一个添加的项目吗?
-
当我添加一个项目时,将该项目显示在表格视图的顶部
-
非常感谢它的工作dd.. :) :) :) :) :) :) :) :) :) :) :) :) :) :) :) :) :) :)
标签: ios swift uitableview core-data