关于block使用导致键盘的延时操作

昨天 ,不小心在弹框中输入支付密码输错了,和服务器通信后报了个未知错误,然后点击确定后,键盘瞬间弹起后来又收了下去,感觉很不可思议,

以为只是巧合,后来测试的洋洋自己点了一次,也是出现这个,但不经常。

- (void)conformEvent    //支付确定按钮的点击事件

{

    [selfendEditing:YES];//这个写法是为了让键盘收下去,其实是有个动画的,但是需要时间,时间大概在0.35秒左右

    

    if (_passwordStr1.length !=0) {

        double delayInSeconds =1; //保证先收起键盘,在执行下面的block,block是直接指向一片内存的

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

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

            self.payBoxViewConformBlock(_getOutput1);

            [self.mtextFieldClean];

            _passwordStr1 =nil;

        });

    }

    else

    {

        [[YFRequestsharedInstance] showHud:@"支付密码不能为空"];

    }

}



block会直接到  

  _payView.payViewConformBlock = ^(NSString *getOutput1){


            _getOutput1 = getOutput1;

            

            [weakSelf requestPayResult];

        };

        

把块先走完 。。。。。。   把getOutput1 传过来 再去请求



定义block    

typedef void (^PayViewConformBlock)(NSString *getOutput1);   //回调带进一个参数

@property (copy,nonatomic) PayViewConformBlock payViewConformBlock;


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值