我正在尝试将默认记录插入到我的核心数据实体中,而tableview首次加载并检查实体中没有数据。
插入的数据很好,但导航到其他视图并导航回数据显示的视图后,reloadData()
不起作用。无论reloadData()
方法中的.save()
进出,
override func viewDidLoad() {
let cateContext = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
let categoryRequest = NSFetchRequest(entityName: "Category")
categoryArray = (try! cateContext.executeFetchRequest(categoryRequest)) as! [Category]
if categoryArray.count == 0 {
let category = NSEntityDescription.insertNewObjectForEntityForName("Category", inManagedObjectContext: cateContext) as! Category
category.sno = "1"
category.category = "General"
category.locate = false
do {
try cateContext.save()
self.categoryTableView.reloadData()
} catch let saveError as NSError {
print("Saving Error : \(saveError.localizedDescription)")
}
}
//self.categoryTableView.reloadData()
}
答案 0 :(得分:0)
如果您在self.categoryTableView.reloadData()
方法中调用viewDidLoad()
,则不会重新加载您的tableView两次。您需要在之后致电self.categoryTableView.reloadData()
,检查实体是否已存在 。