我试图以编程方式从我的.m
文件之一创建新的UIView,然后在5秒后返回到我现有的视图。看起来我的逻辑是关闭的,因为这不是我想要的。我的代码如下。iOS以编程方式创建视图
UIView *mainView = self.view;
UIView *newView = [[UIView alloc] init];
newView.backgroundColor = [UIColor grayColor];
self.view = newView;
sleep(5);
self.view = mainView;
它似乎只是睡5秒,然后什么都不做。
我要做到以下几点,
- 商店开始视图
- 创建新的视图
- 显示灰色视图
- 等待5秒钟
- 显示我原来的观点
我哪里错了?我觉得它必须是我的逻辑,或者我错过了这些步骤的关键部分。
感谢您的帮助! :)
使用'performSelector:withObject:afterDelay:'不要使用sleep()。将'sleep'部分之后的所有逻辑分组到一个方法中并使用'performSelector'。 – danypata
@danypata我应该使用命令,'[self performSelector:@selector(returnToMainView)withObject:mainView afterDelay:5.0]; '然后创建一个方法' - (void)returnToView:(UIView *)mainView {' –
是的,这应该工作。 – danypata