作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我生成了一个 TableView,其中包含我从 API 获取的项目列表。结果是它向我显示了一个带有 UILabel 和 UITextView 的 TableView。代码有效并给了我想要的结果:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell:FormCell = self.tableView.dequeueReusableCell(withIdentifier: "cell") as! FormCell
cell.formLabel.text = (self.fetchedData[indexPath.section] as! String)
// id is available = (self.fetchedDataID[indexPath.section] as! String)
return cell
}
class FormCell: UITableViewCell {
@IBOutlet weak var formLabel: UILabel!
@IBOutlet var formAnswer: UITextView!
}
但现在我想提交 UITextView 中所有给定 formAnswer 的“答案”。如何实现?
我想 POST 到 API 的结果是这样的:
let params = [
"id-of-": "theValueOfTheFormAnswer", // every Value of each UITextView
] as [String : Any]
let requestURL = "/post-url"
let request = Alamofire.request(requestURL, method: .post, parameters: params, encoding: JSONEncoding.default, headers: nil)
最佳答案
您应该不尝试从 TableView 的所有单元格中检索所有 TextView ——这绝对不会起作用,因为单元格(及其所有 subview )可能会被重用,所以数据滚动离开屏幕的单元格将永远丢失。
相反,每次在数据模型中修改 TextView (或失去焦点等)时,您都必须存储数据。用户完成后,您只需将模型的数据发送到后端即可。
设置 UITextViewDelegate
委托(delegate)并使用以下方法之一更新模型:
关于Swift 循环遍历 UITableView 中的所有 UITextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50417426/
我是一名优秀的程序员,十分优秀!