• 设置N秒后执行一个函数,最常用的是设置一个定时器,今天刚看到...5秒后执行pushSecondController这个函数 [self performSelector:@selector(pushSecondController) withObject:nil afterDelay:5.0f]; 比如:在第一个
    


    设置N秒后执行一个函数,最常用的是设置一个定时器,今天刚看到有这样一个函数,感觉还是比较简单实用的,就先记下来,免得忘记了。

    5秒后执行pushSecondController这个函数

    [self performSelector:@selector(pushSecondController) withObject:nil afterDelay:5.0f];

    比如:在第一个视图出现后5秒就跳转到第二个视图,代码如下:

    - (void) pushSecondController{ 
    SecondViewController *secondController = [[SecondViewController alloc] initWithNibName:nil bundle:NULL]; 
    [self.navigationController pushViewController:secondController animated:YES]; 
    } 
    - (void) viewDidAppear:(BOOL)paramAnimated{ 
    [super viewDidAppear:paramAnimated]; 
    [self performSelector:@selector(pushSecondController) withObject:nil afterDelay:5.0f]; 
    }

    5秒钟后又跳回第一个页面

    - (void) goBack{ 
    [self.navigationController popViewControllerAnimated:YES]; 
    }
    - (void) viewDidAppear:(BOOL)paramAnimated{ 
    [super viewDidAppear:paramAnimated]; 
    [self performSelector:@selector(goBack) withObject:nil afterDelay:5.0f]; 
    }
    

    展开全文
  • iOS- 延迟1秒执行一个函数 2016-09-06 20:50:07
    假如延时1时间执行下面的方法。 - (void)delayMethod { NSLog(@”execute”); } 1.performSelector方法[self performSelector:@selector(delayMethod) withObject:nil afterDelay:1.0f]; 此方式要求必须在主线...
  • ios 重复执行方法 2019-04-02 16:15:41
    一、NSTimer 1. 创建方法 NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(action:) userInfo:nil repeats:NO];...比如设置成1.0,就代表1秒后执行方法 ta...
  • iOS 四种延迟执行的方法 2017-04-06 15:06:36
    师弟疑问之延迟某个方法的执行怎么弄1、实现延迟执行的方法有四种 performSelector系列的performSelector:withObject:afterDelay: NSTimer的scheduledTimerWithTimeInterval:target:selector:useInfo:repeats: ...
  • ios GCD延时执行某个方法 2017-01-23 10:46:47
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 3 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{ NSLog(@"3秒后执行这个方法"); });
  • //每隔一分钟执行一次打印 // GCD定时器 static dispatch_source_t _timer; //设置时间间隔 NSTimeInterval period = 60.f; dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, ...
  • iOS 延时执行的方法 2016-03-24 11:17:17
    假如延时1时间执行某方法。 1.performSelector方法 [self performSelector:@selector(doSomething) withObject:nil afterDelay:1.0f]; 此方式要求必须在主线程中执行,否则无效。 是一种非阻塞的执行方式, 暂时...
  • ios 执行shell脚本 2014-10-09 23:39:56
    由于ios中没有 cocoa的NSTask 所以要在cocoa touch SDK中执行shell 只能用系统调用  int system(const char * string); 例如:system("ls"); 注意system是系统C函数 所以参数不要使用NSString; ...
  • 本文列举了四种延时执行某函数的方法及其一些区别。假如延时1时间执行下面的方法。 - (void)delayMethod { NSLog(@"execute"); } 1.performSelector方法 [self performSelector:@select
  • iOS 应用进入后台短暂的实现任务在开发中,我们难免会碰到应用程序进入后台,但是我们任然要执行一些任务。比如保存一个文件,跳到第三方分享的时候处理一些任务,发送一些请求什么的。但是应用进入后台不久...
  • 最近做的项目中,出现了个比较奇怪的现象,具体现象:就是ios机型下,ios9相关版本的机子打开我的网页,js代码不执行,将我自身写的代码注释掉,可以执行其他的js。 此问题暂时找不到原因,但初步认为是js里面...
  • iOS 控制任务执行顺序 2017-07-18 21:20:13
    1.有两个任务都要放在子线程中执行, 且要保证A执行完再执行B. 如果你也有同样的需求, 可以从下面几种方法中挑选一种实现方法 . 2. GCD串行队列,实现任务顺序执行 3. GCD barrier实现任务顺序执行 4. NSOperation ...
  • Method1. performSelector方法 Method2. NSTimer定时器 Method3....Method4....公用延迟执行方法 - (void)delayMethod{ NSLog(@"delayMethodEnd");} Method1:performSelector [self
  • 下面我自己实现一个由右向左加载的label 用于提示信息,不占用主线程,而且可以设定时间消失,下面来看具体实现。代码实现的是点击按钮向当前的NavigationBar上面添加一条提示信息。添加Button 设置Butoon响应...
  • iOS开发中几种延时执行代码 [NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector() userInfo:nil repeats:NO]; [self performSelector:@selector(download:) withObject:@...
  • int a = 0; void (^requestBlock)(NSDictionary *) = ^...这里的a永远是0,在有这段block的前提下,有什么办法让程序同步执行,也就是等待block执行完之后再执行下面的代码?这里只是的例子,我确实有这方面的需要。
  • ios返回上一页不执行js 2017-04-25 22:38:38
    ios返回上一页执行js了吗?我在当前页存储数据,返回上一页取出来渲染到文档上,然而在ios上并没有渲染出来,感觉是连js都整个不执行了。有什么解决办法吗?
  • 延时任务指的是等待一定时间执行某个任务,例如页面的延时跳转等。iOS中控制任务的延时或定时执行的方法有很多,使用中要注意是同步还是异步,是否会阻塞主线程等问题。实现方法主要如下: 1.performSelector...
  • 我们有时候会有这样的需求,当程序处于运行状态,每隔几给服务器发送一次请求。 这时我们可以这样处理: UILocalNotification *localNotification = [[UILocalNotification alloc] init]; // 可以用该语句...
1 2 3 4 5 ... 20
收藏数 235,297
精华内容 94,118