Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何阻止NSTimer线程进一步执行选择器_Iphone_Ios_Ipad_Nstimer - Fatal编程技术网

Iphone 如何阻止NSTimer线程进一步执行选择器

Iphone 如何阻止NSTimer线程进一步执行选择器,iphone,ios,ipad,nstimer,Iphone,Ios,Ipad,Nstimer,目前,我正在创建一个每秒钟调用一次我的方法的NSTimer 我是这样做的: [NSTimer scheduledTimerWithInterval:1 target:self selector:@selector(clocktick) userInfo:nil repeats:YES]; 我如何阻止它调用clocktick 我尝试过这样分配它:NSTimer*myTimer=[NSTimer…,然后使用myTimer=nil;,但没有任何效果。您尝试过使用“invalidate”(例如,[ti

目前,我正在创建一个每秒钟调用一次我的方法的NSTimer

我是这样做的:

[NSTimer scheduledTimerWithInterval:1 target:self selector:@selector(clocktick) userInfo:nil repeats:YES];
我如何阻止它调用
clocktick


我尝试过这样分配它:
NSTimer*myTimer=[NSTimer…
,然后使用
myTimer=nil;
,但没有任何效果。

您尝试过使用“invalidate”(例如,[timerInstance invalidate])吗


或者问题是您不再有对计时器实例的引用了?

您需要
[myTimer invalidate]
这将为您终止计时器。

您必须保留对它的引用,然后向它发送
invalidate
消息:

[myTimer invalidate];

我希望这会有帮助!

您可以创建一个私有属性来保存对类中计时器的引用。或者将正在调用的函数accept NSTimer*作为参数。这样您就可以取消计时器每秒调用的函数中的计时器。(例如:-(void)targetMethod:(NSTimer*)timer{…})