方法一:
//通过动画的方式 1s后让它消失
[UIView animateWithDuration:1.5 animations:^{
imageView.alpha = 0;
} completion:^(BOOL finished) {
[imageView removeFromSuperview];
}];
方法二:
延迟执行:
[self performSelector:@selector(fangfa) withObject:nil afterDelay:3];
取消延迟执行: [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(fangfa) object:nil];
方法三:
void dispatch_after(
dispatch_time_t when,
dispatch_queue_t queue,
dispatch_block_t block);
/*
参数1 : 操作延迟的时间
参数2 : 操作添加的队列
参数3 : 执行那个操作
*/
// 参数1 : 精确到纳秒
dispatch_time_t when = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC));
// 参数2
dispatch_queue_t queue = dispatch_get_main_queue();
// 参数3
void (^task)() = ^{
// 查看当前的线程
NSLog(@"%@",[NSThread currentThread]);
};
// 延迟多少纳秒,在哪个队列中执行那个操作
dispatch_after(when, queue, task);