每次我重新加载视图时,NStimer都会倍增

每次我重新加载视图时,NStimer都会倍增,timer,nstimer,invalidation,Timer,Nstimer,Invalidation,我有一个用于2个屏幕(主屏幕和设置)的单视图控制器 在查看是否加载时,我有一个计时器,可重复无限次(检查条件) 当我加载设置屏幕并返回时,计时器会再次启动,但旧计时器也会工作,所以在几次加载卸载后,我有很多计时器检查相同的条件(这会使我的应用程序变慢) 我尝试使用“无效”,但发现我的计时器没有看到它。(我在调用计时器之前放置了无效,并将其无效,但没有结果)。正如您所提到的,您对主屏幕和设置屏幕使用相同的视图控制器,无论是主屏幕还是设置屏幕 解决方案是在appdelegate中初始化此计时器,在切

我有一个用于2个屏幕(主屏幕和设置)的单视图控制器

在查看是否加载时,我有一个计时器,可重复无限次(检查条件)

当我加载设置屏幕并返回时,计时器会再次启动,但旧计时器也会工作,所以在几次加载卸载后,我有很多计时器检查相同的条件(这会使我的应用程序变慢)


我尝试使用“无效”,但发现我的计时器没有看到它。(我在调用计时器之前放置了无效,并将其无效,但没有结果)。

正如您所提到的,您对主屏幕和设置屏幕使用相同的视图控制器,无论是主屏幕还是设置屏幕


解决方案是在appdelegate中初始化此计时器,在切换主选项卡和设置时,首先使其无效,然后在出现ViewDid后再次启动它。

调用视图中的无效计时器将消失

然后,它将在启动新引用之前删除计时器实例