您的位置:首页 > 产品设计 > UI/UE

【实用】iOS开发iOS9中使用UIAlertView,弹窗消失时出现键盘闪现,导致输入框出现在屏幕中。

2016-07-22 10:26 746 查看

iOS9中使用UIAlertView,弹窗消失时会出现键盘闪现的问题,键盘弹起,再消失,有时候甚至看不到现象,但是键盘确实被吊起了,有些app,输入框与键盘高度关联,会很容易看到,输入框上移出现在了屏幕中,还没有键盘。

如果是自己使用的UIAlertView,换成UIAlertController就可以解决这个问题。

但是第三方分享中,QQ分享成功后会有个弹窗,“留在QQ  返回APP”,回到APP,会出现键盘吊起现象,看不到,但确实有。

思路:键盘弹起的系统时间是标准的0.25秒,看不到,说明该弹起时间为0秒,如果能够拿到键盘弹起的时间就好了。于是,在键盘的监听的参数中,发现了这个。

键盘监听代码

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
监听方法:
- (void)keyboardWillShow:(NSNotification *)notification{
NSLog(@"%@", notification);
}
我们在控制台看到了这个:



UIKeyboardAnimationDurationUserInfoKey就是我们需要的参数。

解决方案:如果UIKeyboardAnimationDurationUserInfoKey为0,就不执行弹起输入框代码。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: