2015-12-10 49 views
0

我嘗試在tableview首次加載並檢查實體中沒有數據時將缺省記錄插入到我的核心數據實體中。 插入的數據很好,但reloadData()沒有工作,導航到其他視圖並導航回數據顯示的視圖。不管reloadData()是進出.save()的方法。將數據保存到核心數據實體後,TableView.reloadData()不起作用

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

你需要獲取新的數據,然後重新加載你的桌面視圖 – andlin

+0

是的!有用 !非常感謝 !! –

回答

0

如果您在viewDidLoad()方法調用self.categoryTableView.reloadData()它不會重新加載您的tableView的兩倍。您需要撥打self.categoryTableView.reloadData()您已檢查實體是否存在再次

+0

謝謝你的回答! –

+0

如果它爲你工作,請接受anawer。 –