抱歉我的英文
在我的应用中,我有一个登录表单。如果用户名和密码好,
用户名存储在keyChain中,并使用以下命令返回主viewController:self.navigationController.popToRootViewControllerAnimated(true)
数据由php文件加载,该文件使用用户名从该用户名获取数据
在主viewController中,它们是一个包含数据的tableView
但问题是连接后,tableView不会改变。它只会在重新启动应用程序时更改
获取数据的代码:
@IBOutlet var tblTask: UITableView!
let bodyData = "username=" + username!
let URL: NSURL = NSURL(string: "link to php file")
let request:NSMutableURLRequest = NSMutableURLRequest(URL:URL)
request.HTTPMethod = "POST"
request.HTTPBody = bodyData.dataUsingEncoding(NSUTF8StringEncoding);
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue())
{
(response, data, error) in
var output = NSString(data: data, encoding: NSUTF8StringEncoding)
var array = self.JSONParseArray(output)
for var i = 0, a = 1 ; i < array.count ; i += 2, a += 2 {
if(a > 0 && i > 0)
{
self.arrayDate.append(array[i])
self.arrayPoid.append(array[a])
}
}
for var i = 0; i < self.arrayDate.count ; i++ {
self.arrayPoid[i] += " livres"
}
self.tblTask.reloadData()
}
答案 0 :(得分:1)
我认为Unwind Segues就是您所需要的。您只需几步即可设置它们。在rootViewController中添加此方法:
@IBAction func reset(segue: UIStoryboardSegue) {
tableView.reloadData()
}
在Interface Builder中,在任何需要返回rootViewController的viewController中创建UIButtons
。然后将这些UIButtons
中的每一个链接到各自viewController的红色“退出”按钮,并选择重置:在出现的弹出菜单中(参见下图)。
当您点击这些按钮时,您将返回到您的rooViewController并执行reset:
(重新加载您的tableView)。
有关展开细分的更多详细信息,请参阅WWDC 2012会话视频“在您的应用中采用故事板”。[从38分钟开始]。
答案 1 :(得分:0)
尝试self.tableView.reloadData()
的{{1}}方法中的UITableViewController
来电。这解决了吗?