码迷,mamicode.com
首页 > 其他好文 > 详细

cell中的文本框————bug

时间:2016-07-05 17:01:28      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:

根据要求需要制作一个报表,我一UItableView为主体,自定义cell,在cell中添加文本框以便输入相应字段,

要求:1,当我们改变表格对应行的内容时会自动计算相应列的总和【相信大家用过Excel 原理差不多了】

我再文本框失去焦点时,调用代理方法通知UItableView的页面进行计算并刷新数据源和表格

 

 

bug:导致文本框不能正常的获取焦点,但我们页面上已经有获取焦点的文本框时,又去点击另外的文本框,此时新的文本框不能获取焦点,但会弹出键盘,且键盘无法收起,通过监听文本框的代理发项,文本框执行到了即将获取焦点的方法【

textFieldShouldBeginEditing

】后便不再往下面执行

原因:当我们上一个文本框失去焦点后出发代理方法会刷新数据源和表格,但是又点击了新的文本框,新的文本框获取焦点的时候,表格刷新,新文本框所在的cell死了,此时出现在用户视野中的是另一个相同的文本框,他没有获取焦点,这样就造成了上述的情形,同时弹出的键盘与文本框没有关联 也无法收起【纯属个人理解.......】

我想的解决方法:使用异步执行代理,处理数据并刷新UI[在主线程中刷新UI]

bug:不会出现上述的bug,但是这样当点击新的文本框的时候,新的文本框不会立即获取焦点,而是就的文本框失去焦点,再点一次才会获取焦点,这样依然点击了两次才回去焦点,想对而言不会出现键盘时刻的情况,但是体验依然不好

解决:不用异步,不刷新整个表格,只刷新需要的cell即可,在这个功能中只需要刷新合计项的数据就好了

cell中的文本框————bug

标签:

原文地址:http://www.cnblogs.com/zmtBK/p/5644183.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!