【发布时间】:2014-10-02 18:07:01
【问题描述】:
我在 http 请求内的回调函数中调用这段代码。 http 请求是用于更新应用数据的 get。因此,对于某些 VC,我需要重新加载视图实例,回调完成更新 Core Data 中的所有内容。
这是我当前使用的代码块(在回调函数中调用)。
func reloadTopMost(){
var topMost = topMostContoller() as UIViewController
if topMost.isKindOfClass(SecondViewController){
topMost.reloadInputViews()
var svc = topMost as SecondViewController
svc.studentTable.reloadData()
svc.studentTable.setNeedsDisplay()
svc.viewDidLoad()
svc.reloadInputViews()
}else if topMost.isKindOfClass(ThirdViewController){
topMost.reloadInputViews()
var tvc = topMost as ThirdViewController
tvc.inClassTable.reloadData()
tvc.inClassTable.setNeedsDisplay()
tvc.viewDidLoad()
tvc.reloadInputViews()
}
}
如您所见,我尝试了 reloadData()、setNeedsDisplay()、viewDidLoad 和 reloadInputViews()。我从this one 等问题的答案中得到的想法。我确信 if 语句正在为每个 vc 类传递。所以我不确定为什么这不会重新加载 VC/表。这是因为它是在异步函数中调用的吗?
【问题讨论】:
标签: asynchronous uiviewcontroller swift