0
我想执行操作的UI线程(设置按钮启用状态)performSelector:withObject:afterDelay块UI线程
但是,如果我要执行它的“延迟后”似乎阻止用户界面螺纹
-(void)changeButtonState:(UIButton *)btn{
[btn setEnabled:NO];
[self performSelector:@selector(reenableButton:) withObject:btn afterDelay:5];
}
-(void)reenableButton:(UIButton*)btn{
[btn setEnabled:YES];
}
我怎么能延迟后进行选择,没有它阻塞主线程,我需要做的操作必须在UI线程做什么?
'performSelector:withObject:afterDelay:'不会阻塞当前线程。你是说你的UI被阻塞了5秒,直到选择器被调用?这根本不应该发生。 – rmaddy
我有2个编辑文本在屏幕上和一个按钮,在第一个编辑文本中输入一些输入后,我点击该按钮,反过来变为禁用,我无法点击第二个编辑文本来改变它的值之前该按钮变为重新启用。我已经把它写在如此按下屏幕之外的任何视图(编辑区域,按钮)上,隐藏了键盘,当按钮被禁用时不会发生 –