問題タブ [nstimer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
530 参照

iphone - 時間通りである可能性が最も高い: +timeWithTimeInterval または -performSelector:withObject:afterDelay:

サウンド ファイルの長さよりも短い短い時間だけサウンドを再生したいと考えています。そこで、プレイ開始と同時に音を止めるタスクをキューに入れておきたいと思います。

stop メソッドをキューに入れるには、NSTimer と performSelector:withObject:afterDelay の 2 つの選択肢があります。

2つのうちどちらが時間通りにトリガーされる可能性が最も高いか、または優先度が高いかを誰かが知っていますか? ミリ秒の精度で呼び出されることは必須ではありませんが、0.1 秒までの精度は素晴らしいでしょう。


補遺: さまざまなタイマーおよび遅延タスクの優先度に関するドキュメントがどこにあるか知っている人はいますか? たとえば、以下はどのようにランク付けされますか。

  • NSTimer タスク
  • 実行セレクター
  • setNeedsDisplay が呼び出された後のビューの drawRect の呼び出し
  • setNeedsDisplay が呼び出された後のレイヤーの描画ルーチンの呼び出し
  • その他の遅延タスク

そして、これを別のスレッドで実行しようとすると便利でしょうか?

0 投票する
1 に答える
4900 参照

objective-c - iPhoneがディープスリープモードのときにサウンドとNstimerが停止しましたか?

nstimer と avaudioplayer を使用してサウンドを再生するアプリケーションを作成していますが、電話がディープ スリープ モードになるとサウンドとタイマーの両方が停止します。この問題を解決するにはどうすればよいですか?

ここにオーディオを再生するコードがあります

0 投票する
2 に答える
860 参照

objective-c - NStimer iphone sdkでサウンドを同期しますか?

私はアプリケーションを作成しています.私のアプリでは、カウントダウンのために画像を変更しています.1秒が完了したときにティック音を再生したいです. 1秒の。うまく動作することもありますが、うまくいかないこともあります。オーディオをタイマーと同期させるにはどうすればよいですか。

0 投票する
1 に答える
223 参照

iphone-sdk-3.0 - iPhone SDK を使用してアプリケーション セッション時間を記録しますか?

ユーザーのアクティビティのログを保持するために、アプリケーションの実行時間を記録したいと考えています。グローバル NSTimer を使用して時刻を記録する必要がありますか? またはより良い方法はありますか?

サンプルコードは大歓迎です。

0 投票する
5 に答える
9587 参照

iphone - DeallocでNSTimerを無効にする問題

以下は私のコードです:

.hファイル:

.mファイル:

これで、deallocが呼び出されると、プログラムが行でクラッシュし、タイマーが無効になります。次の2行は呼び出されません。「EXC_BAD_ACCESS」エラーが発生します。なぜそれが起こっているのか、そしてクラス内のNSTimerメンバー変数を停止および解放する適切な方法を誰かに教えてもらえますか?

0 投票する
3 に答える
1150 参照

iphone - 0.0<進行状況<0.03の場合、UIProgressViewは変更されません

1分のタイマーを視覚的に表すために使用しているUIProgressViewがあります。その幅は280ピクセルです。NSTimerを使用して、progress=1.0から開始して'progress'の値を徐々に減らしています。「進行状況」は、10分の1秒ごとに更新されます。最後の2秒間を除いて、それは私が望んでいることを正確に実行します。

'progress'の値が0.03を下回ると、UIProgressViewの移動が停止し(約.2cmのバーが表示されます)、'progress'が0.0に達すると、.2cmのバーが消えます。

UIProgressViewがこのように動作する理由を誰かが知っていますか?これは仕様によるものですか、それとも私は何か間違ったことをしていますか?

編集:

mjdth、

NSTimerが呼び出すメソッドでは、NSLogを使用して「progress」の値を表示しているため、丸めとは関係ないと思います。たとえば、有効数字6桁で出力されます。

2009-12-31 21:13:22.462 XXXXXXX 0.101669
2009-12-31 21:13:22.562 XXXXXXX 0.100003

その上、もしそうなら、最後の2秒間だけでなく、すべての動きが途切れ途切れになります。NSTimerが呼び出すコードは次のとおりです。

0 投票する
2 に答える
12726 参照

cocoa - runloop がブロックされているときに NSTimer が起動しない

アプリをほぼ完成させたところですが、ベータ テストでストップウォッチ部分にバグが見つかりました... ストップウォッチは nstimer を使用してカウントを行い、ラップを保存するためのテーブルを持っていますが、ラップ テーブルをスクロールすると時計が停止または一時停止します失われた時間を取り戻せません。

これは、以下を使用して停止していました。

経過時間を計算します。

しかし、私はまだ NSTimer を使用して 0.1 秒ごとにトリガーしています。これは、経過時間が最後に正しく更新されても、スクロールによってタイマーが停止することを意味します...これを Apple ストップウォッチと比較すると、ストップウォッチには、経過時間をカウントするためだけの別のスレッドがあります。それがどのように行われるかを誰かが知っていますか?

現在、エポック以降の時間を使用することは、ある意味ではうまく機能していますが、ストップウォッチの開始、停止、再起動の問題が複雑になります

時計が停止すると、時間が保存され、時計が再起動されたときのオフセットを計算するために使用されますが、遅延が発生しているようで、時計を再起動すると時間が目に見えて進みます。

根本的な原因または解決策に向けた考えは大歓迎です。

0 投票する
1 に答える
302 参照

cocoa-touch - UISlider とリアルタイム

UISlider を使用して制限時間として機能させようとしています。問題は、値が 1 に反転する前に .99 になることです。

これまでの私のコードは

したがって、スライダーは機能しますが、小数点以下が.60に達すると、1ずつ増加し、小数点以下が.00にリセットされます

スクリーンショット添付。

ありがとう、ジェイソン・ジャーディム

0 投票する
1 に答える
349 参照

cocoa - NSThreadメモリ内のNSTimerは大きくなりますか?

スレッド内でタイマーを使用しています。常にタイマーをインスタンス化していますが、機器内でアプリケーションを実行すると、メモリが指数関数的に増加し、リークは発生していません。NSThreadが成長を引き起こしていると確信していますか?。新しいタイマー(シングルトン)を実行する前に現在のタイマーを停止し、stopTimerですべてを解放していますが、メモリがまだ増加している理由がわかりませんか?

0 投票する
2 に答える
2578 参照

iphone - デリゲート メソッドを使用した NSTimer

私はデリゲートに NSTimer を設定しようとしています - 私は Objective-C に非常に慣れていないので、これがあまり意味をなさない場合はお詫びします。しかし、私が書いたことは次のとおりです。

残念ながら、これは機能しません。誰かが私を正しい方向に向けることができますか? 私の心は揚げました!