【问题标题】:iPhone how to cancel stop performSelectoriPhone如何取消停止performSelector
【发布时间】:2010-09-06 05:43:14
【问题描述】:

在我的 iPhone 应用程序中,我在延迟一段时间后使用以下函数来做某事

- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay;

有什么办法可以取消这个 performSelector 并在延迟后停止做某事?

【问题讨论】:

    标签: iphone


    【解决方案1】:
    [NSObject cancelPreviousPerformRequestsWithTarget:yourTarget selector:aSelector object: anArgument];
    

    【讨论】:

    • swift有什么选项吗?
    【解决方案2】:

    我认为查看一些实际代码可能对人们有用,所以这里有两个我用来停止声音并在我转到另一个屏幕时滑动。

    - (void)handleSwipeNext {
    
        [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(handleSwipeNext) object:nil];
    
        [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(playPromptAndTarget) object:nil];
    
    // do some swipe handling stuff
    }
    

    【讨论】:

      【解决方案3】:

      Swift 4.0 版本:

      NSObject.cancelPreviousPerformRequests(withTarget: self, selector: #selector(yourFunc), object: nil)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-08
        • 1970-01-01
        • 1970-01-01
        • 2012-02-12
        • 1970-01-01
        相关资源
        最近更新 更多