输入框在tableview上 滑动输入框上的字消失的问题

  当有很多行输入框在tableview上超出了手机的屏幕的时候,上面原来有的字消失,数据没有保存。  当你划出屏幕的时候,是cell被替换(不是释放)了,然后又重新构建了一个textField,已经不是以前的那个,所以肯定是空的。不过这里倒是有个好玩的,就是 如果你正在编辑某个textField,你把它划出屏幕,这个textfield所在的cell是不会释放的,内容也还在,不过这点倒是对整体没有帮助

   这个与重用没有什么关系的,在不使用重用机制的情况下,当你划出屏幕外时cell也会被释放,在不使用重用的机制的情况下可以使用__weak来修饰UITableViewCell指针 成员变量,然后在tableViewCell构建的时候,让它指向某个cell,然后在cell构建之前输入它

__weak UITableViewCell* _testCell;

  if (indexPath.row == 1) {

NSLog(@"_testCell >>> %@",_testCell);

if (_testCell != nil) {     //如果不为空就直接返回这个cell
return _testCell;
}
}
但是这种办法只能保存indexPath.row == 1的情况下才能保存
可以使用一个字典保存我们输入的数据,根据indexpath.row的来决定字典的key,然后在一一取出,这样就可以了,但是有点麻烦。
textfield.tag = row;
保存
[dicc setObject:field.text forKey:[NSString stringWithFormat:@"%ld",field.tag]];
 

转载于:https://www.cnblogs.com/Toney-c/p/5848570.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值