0

タイマーをプロパティとして設定せずに、nstimerを特定の回数初期化することは可能ですか?これが必要な理由は、アプリケーションの特定の期間に常に新しいタイマーを割り当てているため、プロパティタイマーを無効にすると使用できなくなるため、プロパティを使用できないためです。

メソッドで[NSTimer scheduledTimerWithTimeInterval: target:selector: userInfo:nil repeats:]は、ターゲットパラメーターを使用して、指定したセレクターのパラメーターとしてタイマー自体を渡すことができますか?(申し訳ありませんが、メソッドでターゲットが何を意味するのかはわかりません)。

それがうまくいかない場合は [NSTimer scheduledTimerWithTimeInterval: invocation: repeats:]、invocationプロパティを試して、これや何かを行うのに役立てることができますか?申し訳ありませんが、このメソッドの呼び出しパラメーターもわかりません。ドキュメントを確認しましたが、まだわかりません。

4

1 に答える 1

4

タイマーの「ターゲット」とは、セレクター(またはメソッド、アクション)を実行するオブジェクトを意味します。

また、タイマーを実行する回数を追跡する最良の方法は、「カウンター」または「実行回数」プロパティ(またはivar)を持つカスタムObjective Cオブジェクトをインスタンス化し、タイマーごとにインクリメントすることです。そのオブジェクトからメソッドを実行します。

カウンターが必要な回数を通過するとすぐに、タイマー(呼び出すメソッドにパラメーターとして渡される)を無効にして、カスタムオブジェクトを解放できます。

于 2012-11-10T18:20:26.233 に答える