遭遇wait_fences: failed to receive reply: 10004003错误

本文介绍了在使用UIAlertView时遇到的与键盘冲突导致的wait_fences:failedtoreceivereply:10004003错误。通过关闭键盘可以有效避免此问题,并讨论了在非主线程中修改UI可能导致的类似错误。
摘要由CSDN通过智能技术生成

如今我遇到了这个问题,在使用UIAlertView的过程中,莫名其妙的出现wait_fences: failed to receive reply: 10004003这个错误,虽然程序不会崩溃,但是此时的响应速度明显的慢很多,我在网上找了找原因。
原因最后找到了:UIAlertView一弹出,倘若键盘没有关闭,就失去了焦点,当UIAlertView关闭,再回到原界面时,就会尴尬的接到
wait_fences: failed to receive reply: 10004003
解决办法:很简单,在弹出对话框前先关闭键盘就OK了。。

下面时在查找资料的过程中,遇见的,也写上来。
这个问题的实质应该是在非主线程中 直接修改 界面
解决的方法:在后台或子线程做的操作,刷新UI的时候,一定要在主线程进行
//可能的具体情况:
1、需要实现UIAlertView的代理方法
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
}
2、在viewDidLoad方法里面生成了多个Button,在点击button是,切换他们的selected状态,会出现这个问题
[iphone][xcode]wait_fences: failed to receive reply: 10004003
在View未显示之前就执行动画之类的错误警告
例如:在没有rootViewController只有window的情况下,启动了UIAlertView,会出现这个警告

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值