【发布时间】:2014-09-01 14:33:14
【问题描述】:
对不起我的英语
在我的应用程序中,我有一个登录表单。如果用户名和密码正确,
用户名存储在 keyChain 中,然后返回到主 viewController 使用:self.navigationController.popToRootViewControllerAnimated(true)
数据由使用用户名从该用户名获取数据的 php 文件加载
在主视图控制器中,它们是一个包含数据的 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()
}
【问题讨论】:
-
你使用 UITableViewController 吗?您是否正确绑定了
tableView插座? -
您的代码中缺少某些内容。你什么时候在你的(表)ViewController 中执行
NSURLConnection.sendAsynchronousRequest...?用什么方法? -
所以,每次你需要重新加载你的tableView,在你的
viewDidiLoad:之外,你实际上需要调用NSURLConnection.sendAsynchronousRequest...。这将重新获取您的数据源并在它之后执行您的 tableView 重新加载。你同意吗?
标签: ios uinavigationcontroller swift tableview