我正在向phNumArray
添加表视图单元格标签文本,在表视图中我得到了所有值,但是当我尝试传递服务调用时,它即将到来为什么?
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
@IBOutlet weak var joinersTableView: UITableView!
var tablcellArray = [String]()
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: Namescell = tableView.dequeueReusableCell(withIdentifier: "Namescell") as! Namescell
cell.empRoleLbl.text = empTeftfield.text
tablcellArray.append((cell.empRoleLbl.text!))
print("employee names array (tablcellArray)")// here coming all appende values
return cell
}
func getPostData(params: [String:Any]) -> Data? {
return try? JSONSerialization.data(withJSONObject: params, options: .prettyPrinted)
DispatchQueue.main.async {
self.joinersTableView.reloadData()
}
}
func callPostApi() {
print("tableview emp values(tablcellArray)")// here array values not coming
let url = URL(string: "http://itaag-env-1/")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
print("appende values (tablcellArray)")
try? request.setMultipartFormData(["contactsList": "(tablcellArray)"], encoding: .utf8)
DispatchQueue.main.async {
self.joinersTableView.reloadData()
}
URLSession.shared.dataTask(with: request) { data, _, _ in
if let data = data, let json = try? JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String: Any] {
}
}.resume()
}
}
在表视图中,单元格为行附加了值.. 但是当我尝试将该数组带入callPostApi
func 时,tablcellArray
显示 nil 为什么?
请分享您的知识,请尝试解决此错误。
首先更改
var tablcellArray = [String]()
自
var tablcellArray = [String]
然后在您的单元格中ForRowAt 尝试访问您的数据,例如
let empTeftfield = tablcellArray[indexPath.row]
如果此行打印正确
cell.empRoleLbl.text = empTeftfield.text
这应该有效。
如果未打印您的值,则在从 API 获取数据后重新加载表视图。 您不应该在您的条件下向数组添加值。