使用NSUserDefaults不会打印Tableview数据

时间:2015-11-13 01:48:18

标签: swift uitableview nsmutablearray nsuserdefaults

我正在尝试将我保存的数组放入NSUserDefaults并将其添加到我的tableview中......当我运行print(notifications[indexPath.row])时,我的数组(通知)内容被打印出来。但是,当我将这些内容添加到我的tableview时,没有任何显示。我假设虽然数组通过NSUserDefaults保存和检索,但它可能无法将数组内容转换为我可以添加到我的tableview的字符串。任何帮助,将不胜感激。谢谢!

以下是一些可能有用的额外代码:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = notificationsTableView.dequeueReusableCellWithIdentifier("notificationsCell") as! NotificationsTableViewCell
    //Set notificationsLabel of cells
    print(notifications[indexPath.row])
    cell.notificationsLabel.text = notifications[indexPath.row] as? String
    //Set datesLabel of cells
    cell.datesLabel.text = dates[indexPath.row] as? String

    return cell
}

1 个答案:

答案 0 :(得分:0)

修复:我必须指定数组只由String组成。为此,我通过var notifications = [NSString]()初始化了数组。然后我可以使用append命令编辑该数组。最后,将保存的内容添加到我运行的数组中notifications = NSUserDefaults.standardUserDefaults().objectForKey("notificationsKey") as! [NSString]