2012-11-10 57 views
0

是否有可能初始化一個NSTimer若干倍,而不必設置定時器作爲屬性?我想要這樣做的原因是因爲我在應用程序中的某些時段不斷地分配新的定時器,所以我不能使用屬性,因爲一旦我使屬性定時器無效,就不能再使用它。初始化一個NSTimer運行一定次數?

[NSTimer scheduledTimerWithTimeInterval: target:selector: userInfo:nil repeats:]方法

我可以使用目標參數在定時器本身通過如在我指定選擇的參數? (對不起,我真的不知道目標事物在方法中意味着什麼)。

,如果不行可以或許我嘗試[NSTimer scheduledTimerWithTimeInterval: invocation: repeats:]並使用調用屬性來幫我做這做什麼?對不起,我不知道這個方法中的調用參數是什麼,我查看了文檔,但我仍然不明白。

回答

4

「目標」爲一個定時器裝置要運行上的選擇(或方法,或動作)的對象。

而且跟蹤你多少次運行計時器將實例具有「計數器」或「運行次數」屬性(或伊瓦),然後增加它的一些自定義的目標C對象的最佳方式每次定時器運行關閉該對象的方法。

只要計數器通過你的願望,你可以無效計時器(它傳過來的參數,你調用任何方法)和釋放自定義對象的次數。

+0

是啊,我知道,但我如何通過在計時器作爲參數傳遞給任何我必須選擇是。有沒有「withObject」中的NSTimer方法 –

+1

參數@MindiHansenMende說的NSTimer應該有一個說法,這是有問題的定時器的選擇。因此,相關的方法應該是這樣的' - (空)timerDidFire:(*的NSTimer)timer' –

+1

@MindiHansenMende - 你可以在「'userInfo'」參數一起傳遞一個對象。 –