2016-04-06 12 views
-3

Önceden çekirdek verilerinde kayıtlı olan verileri göstermek istiyorum ve sadece önizleme yapmak istiyorum, tıpkı kitap adının kayıtlı olduğu ve tablo görünümünde olduğu gibi. Gördüğüm tüm dersler şimdiye kadar, genellikle metin alanlarını almak, verileri girmek, kaydetmek ve daha sonra almak. lütfen bana yardım edin çünkü bu temel verilerle ilk etkileşimimTemel verilerde önceden kaydedilmiş veriler nasıl gösterilir?

+0

Bundan biraz daha fazla araştırma yapmanız gerekecek. Bahsettiğiniz öğreticiler, nasıl veri ekleyeceğinizi gösterir, böylece bunu metin alanları olmadan yapabilirsiniz. – Mundi

cevap

0

Anladığım kadarıyla NSfetchedResults Denetleyicisi'ni kullanmaya çalışıyorsunuz. Veri un ise bir dizi çekirdek verileri kaydetmek için onun size hızlı kullanıyorsanız ... aşağıdakileri yapın şöyle

// dizinizi oluşturmak

var employee:NSMutableArray = [] 
employee.addObject(["name":"Bill","LastName":"Hanks"]) 
employee.addObject(["name":"Rolex","LastName":"Swarzer"]) 
employee.addObject(["name":"Clive","LastName":"Martin"]) 
employee.addObject(["name":"Jimi","LastName":"Hendrix"]) 

çekirdek verilerine eklemek :

let appDel = UIApplication.sharedApplication().delegate as! AppDelegate 
     let context = appDel.managedObjectContext 

     for item in employee { 
      do { 
       let newUser = NSEntityDescription.insertNewObjectForEntityForName("Employee", inManagedObjectContext: context) 
       newUser.setValue(item["name"], forKey: "name") 
       newUser.setValue(item["LastName"], forKey: "lastname") 
       try context.save() 
      } catch { 
       //do nothing 
      } 
     } 

Eğer UITableView nasıl kurulacağı biliyor ve onun mülkiyet tableBox aşağıdaki yöntemleri gözlemlemek çağrıda varsayarsak. Kopyalayıp yapıştırabilir ve sadece gerekli olanları değiştirebilirsiniz

// --------------------------------- ---- yük tableViewMethods -----

func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String? { 
    return "" 
} 

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    let sectionInfo = self.fetchedResultsController.sections![section] 
    return sectionInfo.numberOfObjects 
} 

func numberOfSectionsInTableView(tableView: UITableView) -> Int { 
    return (self.fetchedResultsController.sections?.count)! } 

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
    let cell = tableView.dequeueReusableCellWithIdentifier("theCell", forIndexPath: indexPath) 

    let object = self.fetchedResultsController.objectAtIndexPath(indexPath) as! NSManagedObject 
    self.configureCell(cell, withObject: object) 

    return cell 
} 

func configureCell(cell: UITableViewCell, withObject object: NSManagedObject) { 
    cell.textLabel!.text = object.valueForKey("name")!.description 
    cell.detailTextLabel!.text = object.valueForKey("lastname")!.description 
} 

func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool { 
    // Return false if you do not want the specified item to be editable. 
    return true 
} 

func tableView(tableView: UITableView, canMoveRowAtIndexPath indexPath: NSIndexPath) -> Bool { 
    return true 
} 

func tableView(tableView: UITableView, moveRowAtIndexPath sourceIndexPath: NSIndexPath, toIndexPath destinationIndexPath: NSIndexPath) { 
    tableBox.moveRowAtIndexPath(sourceIndexPath, toIndexPath: destinationIndexPath) 
} 

func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) { 
    if editingStyle == .Delete { 
     let context = self.fetchedResultsController.managedObjectContext 
     context.deleteObject(self.fetchedResultsController.objectAtIndexPath(indexPath) as! NSManagedObject) 

     do { 
      try context.save() 
     } catch { 
      // Replace this implementation with code to handle the error appropriately. 
      // abort() causes the application to generate a crash log and terminate. 
      abort() 
     } 
    } 
} 

// -------- getirilen sonuçlar kontrolör Sadece Varlık Adı ve NSSortdescriptor anahtarını değiştirmeyi unutmayın. Ayrıca sizin tablo isminiz ne olursa olsun tableBox özelliğini değiştiriniz.

İlgili konular