【问题标题】:I can't get my UITableView to reload data in swift我无法让我的 UITableView 快速重新加载数据
【发布时间】:2015-04-14 11:50:10
【问题描述】:

我正在使用 UITableView 列出一些设置,该设置的状态显示在单元格标题中。选择单元格后,它会转到另一个视图,我在其中更改设置。我使用导航控件返回 UITableView 但是我无法更新表格

class OptionTable: UITableViewController{

var table : [[String:AnyObject]] = []
var data = NSMutableDictionary()

func dataFilePath() -> String {
    let paths = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)
    let documentsDirectory = paths[0] as NSString
    return documentsDirectory.stringByAppendingPathComponent("data.plist") as String
}

override func viewDidLoad() {
    super.viewDidLoad()
    data = NSMutableDictionary(contentsOfFile: self.dataFilePath())!
    table = data["table"] as [[String:AnyObject]] 
}
override func viewWillAppear(animated: Bool) {

    self.tableView.reloadData()

}

override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return table.count
}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        var rowTable : Dictionary = table[indexPath.row]
        cell.textLabel?.text = rowTable["Title"] as? String

        return cell
    }
}

当我打开 UITableView 备份时,数据保存在 plist 中,只是没有重新加载。 当我返回另一个页面然后再次转发到 UITableView 时,表格确实会重新加载。

为什么 self.tableView.reloadData() 不起作用???任何帮助将不胜感激。

【问题讨论】:

  • 我建议移动这些数据 = NSMutableDictionary(contentsOfFile: self.dataFilePath())! table = data["table"] as [[String:AnyObject]] 在重新加载 tableView 之前将两行放入 viewWillAppear。
  • 我不知道是否相关,但我注意到你没有打电话给super.viewWillAppear,无论哪种情况你都应该这样做。

标签: uitableview swift ios8 refresh reload


【解决方案1】:

您可能正在将 保存到 plist,但 viewDidAppear 在刷新 tableView 之前没有加载它。

将 plist 的加载移动到viewDidAppear

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-18
    • 1970-01-01
    • 2012-01-19
    • 1970-01-01
    • 2015-06-01
    相关资源
    最近更新 更多