您的位置:首页 > 移动开发 > IOS开发

iOS键盘弹出又消失的问题

2016-05-20 11:36 591 查看
昨天遇到一个问题,我自定义的一个替人报名弹框,当报名成功后,我让其弹出一个uialertview,点击确定后跳转到其他页面,但是存在一个问题,就是键盘会出现弹出又消失的现象,分析了很久,并没有找到合适的方法让其消失,怀疑是线程问题,具体原因还在分析中,目前采用了一个延迟0.5s的操作,解决了该问题。

上代码

              [[[UIApplication sharedApplication] keyWindow] endEditing:YES];

            dispatch_async(dispatch_get_global_queue(0, 0), ^{

                

                double delayInSeconds = 0.5;

                dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);

                dispatch_after(popTime, dispatch_get_main_queue(), ^(void){

                    [self successfulShowMessage:@"恭喜您报名成功"];

                });

                

            });

报名成功弹框

- (void)successfulShowMessage:(NSString *)message {

    UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"提示" message:message delegate:self cancelButtonTitle:@"好" otherButtonTitles:nil, nil];

    alert.tag = 1601;

    [alert show];

}

代理方法

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {

    

    [self.timer invalidate];

    if (alertView.tag == 1601) {

        //跳转分享奖励

        if (buttonIndex == 0) {

        if ([_isNew isEqualToString:@"0"]) {

            if (_delegate && [self.delegate respondsToSelector:@selector(passToshareRewardVC)]) {

                [self.delegate passToshareRewardVC];

            }

           }

        }

        [self removeFromSuperview];

    }

}

目前在研究热更新,会持续分享
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: