Swift3 滚动和访问时自定义tableviewcell中的Textfield会崩溃
当我添加自定义tableview单元格时,该单元格具有文本字段和滚动tableview 该单元格从屏幕上消失,然后我去访问在该应用程序中输入的文本字段的访问值 这是我进入access textfield并崩溃的代码Swift3 滚动和访问时自定义tableviewcell中的Textfield会崩溃,swift3,uitextfield,ios10,tableviewcell,Swift3,Uitextfield,Ios10,Tableviewcell,当我添加自定义tableview单元格时,该单元格具有文本字段和滚动tableview 该单元格从屏幕上消失,然后我去访问在该应用程序中输入的文本字段的访问值 这是我进入access textfield并崩溃的代码 let index0 : IndexPath = IndexPath(row: 0, section: 0) let tblCell0 = tblInfo.cellForRow(at: index0)! as! MyInfromationCell
let index0 : IndexPath = IndexPath(row: 0, section: 0)
let tblCell0 = tblInfo.cellForRow(at: index0)! as! MyInfromationCell
let strEmail = tblCell0.txtEmail?.text
let index1 : IndexPath = IndexPath(row: 1, section: 0)
let tblCell1 = tblInfo.cellForRow(at: index1)! as! MyInfromationCell
let strAboutMe = tblCell1.txtDescription?.text
let index2 : IndexPath = IndexPath(row: 2, section: 0)
let tblCell2 = tblInfo.cellForRow(at: index2)! as! MyInfromationCell
let strStudioName = tblCell2.txtStudioName?.text
let index3 : IndexPath = IndexPath(row: 3, section: 0)
let tblCell3 = tblInfo.cellForRow(at: index3)! as! MyInfromationCell
let strWebsite = tblCell3.txtWebsite?.tex
当滚动tableview时,单元格将被重新使用,因此当您尝试访问屏幕上未显示的单元格时,会得到一个nil。请参考这个 在访问单元格之前,应安全地将其打开
let index2 : IndexPath = IndexPath(row: 2, section: 0)
guard let tblCell2 = tblInfo.cellForRow(at: index2) as? MyInfromationCell else { return }
如果给定的indexpath的值为nil,则返回函数。可以发布代码吗?我已经更新了代码。但是我需要从中获取textfield的值?它仍然不工作。当单元格不在屏幕上时,您将无法获取值。您可以创建一个模型对象,将textfields文本的值存储到一个新数组中,您可以从该模型中获取值。谢谢