如何快速从 UITableViewCell 动态中获取文本字段的值?
Posted
技术标签:
【中文标题】如何快速从 UITableViewCell 动态中获取文本字段的值?【英文标题】:How To get values of textfields from a UITableViewCell dynamic in swift? 【发布时间】:2020-02-17 09:26:17 【问题描述】:如何提交所有cell values
动态
这里是代码。我只是点击了 api,然后我附加了这些值,然后我显示了所有 data
。 现在的问题是如何获取所有值的文本字段。
func submitApi()
SVProgressHUD.show(withStatus: "Loading please wait........")
let url = constatUrl + "url"
print("catagory",url)
Alamofire.request(url, method: .get, parameters:nil, encoding: URLEncoding.default, headers: nil).responseJSON (response:DataResponse<Any>) in
switch(response.result)
case .success(_):
SVProgressHUD.dismiss()
if let data = response.result.value
let json = response.result.value as? [String: Any]
print("theloginAuthValue is ",json!)
let responseStatus = json!["responseStatus"] as! Bool
let responseText = json!["responseText"] as! String
if (responseStatus == true)
self.user_GLosary.removeAll()
self.productLabel.isHidden = false
self.quantyLabel.isHidden = false
self.quntySubmitButton.isHidden = false
let responseData = json!["responseData"] as! [Any]
var index = 0
while index < responseData.count
let responseArray = responseData[index] as! [String: Any]
let chainId = responseArray["id"] as? String
let chainValue = responseArray["value"] as? String
let folderAppend = FolderGlosaryDetails()
folderAppend.glosaryId = chainId
folderAppend.glosaryName = chainValue
self.user_GLosary.append(folderAppend)
index += 1
DispatchQueue.main.async
self.openingStockTableView.reloadData()
else if (responseStatus == false)
self.displayAlertMessage(messageToDisplay: responseText)
break
case .failure(_):
SVProgressHUD.dismiss()
print("faliure",response.result.error!)
self.displayAlertMessage(messageToDisplay: "Something Wrong Please try again")
break
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
return user_GLosary.count
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
let cell = tableView.dequeueReusableCell(withIdentifier:"OpeningStockCell",for: indexPath) as! OpeningStockCell
cell.stockLabel.text = user_GLosary[indexPath.row].glosaryName
return cell
【问题讨论】:
问题不清楚。你所期待的。 我希望所有文本字段值都存储在空数组中cell.yourTextField.tag = indexPath.raw
cell.yourTextField.delegate = self
就是这样!
【参考方案1】:
你的问题不是很清楚,但我认为你想将你的文本字段值存储到 tableviewCell 中的某个数组中,所以下面的代码可能会对你有所帮助。
首先,定义存储值的数组。我,我在这里取字符串数组,你可以根据需要取。
var arrayValue:Array<String>!
然后将单元格中的文本字段值存储到数组中。
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
let cell = tableView.dequeueReusableCell(withIdentifier:"OpeningStockCell",for: indexPath) as! OpeningStockCell
cell.stockLabel.text = user_GLosary[indexPath.row].glosaryName
// here you can see how you can get value from textfield
arrayValue.append(cell.yourTextField.text!)
return cell
【讨论】:
无法正常工作。我想将所有单元格值存储在一个数组中以上是关于如何快速从 UITableViewCell 动态中获取文本字段的值?的主要内容,如果未能解决你的问题,请参考以下文章
如何在自动布局中使用 UITableViewCell 的动态高度并在底部视图隐藏时将其他视图向上移动?
使用多个笔尖在 UITableViewCell 中动态获取行高
如何在swift中设置自定义UITableviewcell的动态高度