【ios】UIDatePicker作为UITextField的inputView的crash问题

新建一个uiview作为uitextfield的inputview,在此uiview中,加入一个uidatepickerview,此uiview是为了需求上的扩展,会有加入其它视觉元素的可能。

 

crash详情:

2016-05-12 10:07:44.437 LiveChild[2722:1916804] used: 374796288 free: 26144768 total: 400941056

2016-05-12 10:08:08.121 LiveChild[2722:1916758] Received memory warning.

2016-05-12 10:08:16.608 LiveChild[2722:1916758] *** Assertion failure in -[UIPickerTableView _createPreparedCellForGlobalRow:withIndexPath:willDisplay:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3512.60.7/UITableView.m:10594

2016-05-12 10:08:16.620 LiveChild[2722:1916758] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'UITableView dataSource is not set'

 

现象:重复几次弹出uidatepicker、再关闭的情况,会导致这个crash。

 

分析过程:

1、曾一度以为是因为内存不够,导致datepicker不能显示,但在之后的几次log中,没有发现Received memory warning,暂且排除这个原因。

2、google了下,友人说需要设置好所有datepicker相关操作后,再将datepicker add到当前inputview的subview中,试了下,无功而返

3、又有友人说在layoutsubviews里addsubview,没有用

4、友人说setdate第一次是ok的,第二次就crash掉,咦,很相似哦~ 在willDisplay时,产生了crash,兼之在调试过程中(有断点)并未产生crash,且zombies在跑的过程中没有crash(神啊,原因是zombies跑真机设备会有延时啊),故而,通过延时setdate的方式,发现4、5次又crash了,还是不行,连zombies都不行,真是要绝望了啊~~

5、最后,既然这是一个datepicker因为多次设置而导致的问题,那么我尝试每次uitextfield获取到焦点(第一响应者)后,即新建一个包含uidatepicker的uiview,没有再crash了。

 

实际上,在使用uidatepicker的过程中,并未做过多处理,仅仅设置了uidatepicker的一些常用属性,然后在信息显示页面和信息编辑页面多次切换,多次setdate就产生了问题,猜测是苹果的问题(羞~),我只是猜猜....

转载于:https://www.cnblogs.com/kaysun/p/5443350.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值