Delayed perform
@interface NSObject (NSDelayedPerforming)
- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay inModes:(NSArray *)modes;
- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay;
+ (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget selector:(SEL)aSelector object:(id)anArgument;
+ (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget;
@end
@interface NSRunLoop (NSOrderedPerform)
- (void)performSelector:(SEL)aSelector target:(id)target argument:(id)arg order:(NSUInteger)order modes:(NSArray *)modes;
- (void)cancelPerformSelector:(SEL)aSelector target:(id)target argument:(id)arg;
- (void)cancelPerformSelectorsWithTarget:(id)target;
@end
@interface NSObject (NSThreadPerformAdditions)
- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait modes:(NSArray *)array;
- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait;
// equivalent to the first method with kCFRunLoopCommonModes
- (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(id)arg waitUntilDone:(BOOL)wait modes:(NSArray *)array NS_AVAILABLE(10_5, 2_0);
- (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(id)arg waitUntilDone:(BOOL)wait NS_AVAILABLE(10_5, 2_0);
// equivalent to the first method with kCFRunLoopCommonModes
- (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg NS_AVAILABLE(10_5, 2_0);
@end
分享到:
相关推荐
但是对于>2个的参数或者有返回值的处理,那performSelector:withObject就显得有点有心无力了,那么在这种情况下,我们就可以使用NSInvocation来进行这些相对复杂的操作 NSInvocation的基本使用 方法签名类 // 方法...
近日学习了延迟执行的几种方法,分享一下。 1.performSelector(NSObject)方法 ...特点:这个方法必须要在主线程中使用.可以传递参数.可以取消操作,不能暂停. //不带参数 [self performSelector:@selector(delayDo:
IOS多线程编程NSThread的使用方法 NSThread是多线程的一种,有两种方法创建子线程 (1)优点:NSThread 比GCD、NSOperation都轻量级 (2)缺点:需要自己管理线程的生命周期,线程同步。线程同步对数据的加锁会有...
通过performSelector、NSTimer、sleep、GCD四种方法实现了延迟加载;可以根据自己情况选择使用那种延迟方法
1. 使用@property和@synthesize声明一个成员变量,给其赋值是时要在前面加上"self.",以便调用成员变量的setmember方法。 直接调用成员变量并且给其赋值:member=[NSString stringWithFormat:@””];将不执行...
McFly被实现为两类:一类在NSDate上覆盖其时间表示的规范机制,另一类在NSObject上覆盖performSelector…方法,以及一个实用程序类MFLTime用于控制时钟。 用法 只需在项目中包含MFLTime.[h|m]和MFLJRSwizzle.[h|m]...
AAPullToRefresh 到处拉动刷新库。 要求 弧。 iOS 6或更高版本(在iOS 6、7和8上测试)。 安装 可可豆 将pod 'AAPullToRefresh'添加到Podfile。...将AAPullToRefresh目录复制到您的项目。... [v performSelector:@selec
用法将文件UIWindow+TouchIndicatorExtension.m添加到您的项目中,并在应用程序委托的 -applicationDidBecomeActive: 方法末尾调用以下代码以激活触摸指示器。 UIWindow *keyWindow = [[UIApplication ...
LRVariadicPerformSelector 因为有时候,我们需要使用两个以上的参数来执行选择器... 同样,这个简单的类别允许选择注入我们要在其上执行选择器的队列( ...用法[self lr_performSelector:@selector(because:sometimes:
原理: 使用Category,参数经过判断后才能执行方法,再将原生抛异常的方法替换,所以不需要修改任何已有的代码,仅import工具包的头文件,即可解决部分异常问题。 1、NSArray、NSDictionary、NSString、KVC等问题...
原理:使用Category,参数经过判断后才能执行方法,再将原生抛异常的方法替换,所以不需要修改任何已有的代码,仅import工具包的头文件,即可解决部分异常问题。 如果看源码可以发现NSArray的实现比较绕,这是因为...
主要介绍了iOS中UIAlertView3秒后消失的两种实现方法,实现方法涉及到NSTimer和PerformSelector:withObject:afterDelay:方法的结合使用,需要的朋友可以参考下
一般来说,如果需要几秒钟之后触发某个函数,可以使用performSelector:withObject:afterDelay: 。如果需要每几秒钟执行一次某个函数,可以使用NSTimer。但是,如果需要同时进行两者,比如每2秒钟执行一个动作,然后...
performSelector:withObject:方法的作用是什么? 解释一下多态 如何实现深拷贝 http和socket通信的区别,tcp和udp的区别,session和cookie的区别 block实现原理 响应链 frame 和 bounds 写一个宏MIN,这个宏输入两个...
//判断字符串的内容是否相同应该使用nsstring的isEqualToString:方法 //在低版本的时候,如果直接点击注册按钮,没有点击具体的输入框,得到输入框中的内容为nil,如果点击输入框,但是没有输入任何内容,这个时候...
用法:UIImage *yourImage= [self imageWithImageSimple:image scaledToSize:CGSizeMake(210.0, 210.0)]; //压缩图片 - (UIImage*)imageWithImageSimple:(UIImage*)image scaledToSize:(CGSize)newSize { // Create ...