扫码关注官方订阅号
xib创建的cell中添加一个UITextField,如果重用会导致后来在UITextField手动输入的数据混乱,如果不重用会导致内存问题,求解决方案!
业精于勤,荒于嬉;行成于思,毁于随。
重用的时候清理一下历史数据呗, UITableViewCell 有个 prepareForReuse 方法,每次在将要重用前都会调用,你可以在这里清理之前的旧数据。
public func prepareForReuse() // if the cell is reusable (has a reuse identifier), this is called just before the cell is returned from the table view method dequeueReusableCellWithIdentifier:. If you override, you MUST call super.
在cellForRowAtIndexPath方法中return cell之前, 对cell再赋值一次,比如:写一个类textField, cell.testField = self.data[indexPath.row]; 这里的data数组放的是你自定义的类textField,或者直接给cell搞个属性 fieldText, 返回之前再赋值一遍 cell.fieldText = @"测试";
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
重用的时候清理一下历史数据呗, UITableViewCell 有个 prepareForReuse 方法,每次在将要重用前都会调用,你可以在这里清理之前的旧数据。
在cellForRowAtIndexPath方法中return cell之前, 对cell再赋值一次,比如:写一个类textField, cell.testField = self.data[indexPath.row]; 这里的data数组放的是你自定义的类textField,或者直接给cell搞个属性 fieldText, 返回之前再赋值一遍 cell.fieldText = @"测试";