2014-12-07 45 views
0

我在想這不應該很難,但我不知道該怎麼做。任何人都可以告訴我如何列出存儲在給定屬性下的文本字段中的所有數據供用戶操作?用swift在文本字段中列出核心數據屬性

現在我有:

@IBOutlet weak var bodyTextView: UITextView! 

override func viewDidLoad() { 
    super.viewDidLoad() 

    //CoreData 
    let appDelegate = UIApplication.sharedApplication().delegate as AppDelegate 
    let managedContext : NSManagedObjectContext = appDelegate.managedObjectContext! 
    var fetchRequest = NSFetchRequest(entityName: "Log") 
    fetchRequest.returnsObjectsAsFaults = false; 
    var results: NSArray = managedContext.executeFetchRequest(fetchRequest, error: nil)! 

    var logsArray = [""] 

    for res in results { 
     var totalWorkTimeInHours = res.valueForKey("totalWorkTimeInHours") as Double 
     var totalWorkTimeInHoursString = res.valueForkey("totalWorkTimeInHours") as String 

     logsArray.append(totalWorkTimeInHoursString) 

     bodyTextView.text = "Total hours worked:\n\(totalHoursWorkedSum) hours\n\nHour logs:\n\(logsArray)" 

    } 

} 

在這段代碼中我想添加的所有雙打在「totalWorkTimeInHours」歸因於「bodyTextView.text」通過將它們當做字符串,其中追加到「logsArray」,但是當我運行它崩潰。我在這裏做錯了什麼?我確定它與「totalWorkTimeInHours」是NSManagedObject的數組而不是雙精度或字符串的事實有關,但是如何編寫代碼來實現我的目標?

在此先感謝!

這是我得到的錯誤:

enter image description here

+0

凡在你的代碼是 「totalHoursWorkedSum」?它在你想要添加到你的文本視圖的字符串中,但沒有相應的變量。 – 2014-12-08 00:39:13

+0

哦,對不起,我只是最小化了代碼來簡化這個問題。 totalHoursWorkedSum工作正常,它顯示在textView中,但我不知道如何列出所有正在求和的項目。 – Leighton 2014-12-08 00:48:58

+0

錯誤說的是什麼? – 2014-12-08 00:57:05

回答

2

你不能只是重鑄valueForKey爲一個字符串。您需要將double值轉換爲字符串。替換:

var totalWorkTimeInHoursString = res.valueForkey("totalWorkTimeInHours") as String 

var totalWorkTimeInHoursString = "\(totalWorkTimeInHours)" 
+0

謝謝!那就是我需要的。 – Leighton 2014-12-08 15:29:44