問題タブ [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 に答える
1681 参照

ios - iPhone SDK: 次のコードが最初のフレームのみをアニメーション化するのはなぜですか?

私は NSTimer を使用してアニメーション化しようとしており、次のようにコードを設定しました:

これが最初のフレームのみをアニメーション化する理由を知っている人はいますか? この問題はおそらく非常に簡単に修正できますが、私は iPhone 開発の初心者であることに気付くことができません。 - - - - - 編集 - - - - -

さて、NSTimer が正しく動作するようになりました。次のステップは、アニメーションの繰り返しを停止することでした。そのため、次のようにタイマーを無効にしました。

そして今、タイマーが再度呼び出されたときに機能しないので、どうすれば再度検証できますか? (私が思うにそれを再インスタンス化します)

(ところで、私はこれのために別のSO質問を設定しました)

今の私のコード:

} - (void)tick{ [self animatePig]; } - (void)animatePig{

}

0 投票する
6 に答える
2403 参照

iphone - iPhoneで、画面上のコントロールでUIImageViewを移動する最良の方法は何ですか?

このゲームの iPhone 版を開発しています。http://www.students.uni-mainz.de/rathb000/Fillit/Game.html

NSTimer を使用して船の位置を 1 ピクセルずつ変更しています。タイマーの時間間隔は 0.002 です。

しかし、時間間隔をさらに短くすると、船が速く動かないことに気付きました。実際、0.05 と 0.002 の間に違いはありません。NSTimeInterval として与えなければならない最小時間に制限はありますか?

現在、船の動きが遅すぎて、ゲームがエキサイティングではありません。

また、船を動かすためのボタンを押すと、鳥の動き(これもNSTimerによって実現されます)が遅くなります。

これをどのように解決できるかについて何か考えはありますか?

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

iphone - これはNSTimerの仕事ですか?ループ インターフェイスの変更

インターフェイスのボタンを押したままにすると、インターフェイスの他の部分で一連の変更が実行されます。

たとえば、あるテキストが 1 秒間青色に変わると、UImageView はそのイメージを 2 秒間変更します ...など...

この一連の変更は、ボタンが押されている限り、同じステップをループし続けます。

以前に NSTimer を使用したことがありませんが、これでよいのでしょうか?

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

iphone - iPhoneで無限ループのボールの跳ね返りアニメーションを作成する最良の方法は何ですか?

鳥が跳ねるiPhoneゲームを開発しています。

飛んでいる鳥の羽をアニメーション化するための画像を次のように設定しました。

ここで、鳥を動かす方法は、NSTimerを使用して0.03秒ごとに発砲し、imgBird[i].centerのx座標またはy座標から1を加算/減算することです。

私はここからこのようにすることを学びました。http://icodeblog.com/2008/10/28/iphone-programming-tutorial-animating-a-ball-using-an-nstimer/

しかし、問題は、別のタイマー(同じように船を動かすため)が作動するとすぐに鳥が遅くなり、船の動きを止めると元の速度に戻ることです。

NSTimer以外に鳥を動かし続けるためのより良い方法はありますか?

鳥の動きは無限ループです。

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

objective-c - NSTimer によって繰り返しインクリメントされる静的カウンター

1/16 秒ごとに起動する NSTimer があり、毎回メソッドを呼び出します。メソッドが呼び出されるたびに「1」ずつ増加する静的整数を作成したいのですが、静的整数が「16」になったら、別のメソッドを呼び出して静的整数を「0」にリセットしたいと考えています。

どんな洞察も大歓迎です。(言語は Obj-C です)

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

iphone - UIViewとNSTimerがメモリを解放しない

UIViewにUILabelテキストの行があり、NSTimerを介して定期的に更新されます。このコードは、画面の下部近くにステータス項目を頻繁に書き込むことになっています。データはその管理外から来ています。

UILabelがリリースされていないように見えるため、私のアプリは非常に高速にメモリを使い果たします。Deallocが呼び出されることはないようです。

これが私のコードの非常に圧縮されたバージョンです(わかりやすくするためにエラーチェックなどは削除されています)。

ファイル:SbarLeakAppDelegate.h

ファイル:SbarLeakAppDelegate.m

File:Status.h

File:Status.mこれが問題のある場所です。UILabelはリリースされていないようで、文字列もリリースされている可能性があります。

ファイル:Model.h(これと次はデータソースであるため、完全を期すためにのみ含まれています。)実行するのは、毎秒カウンターを更新することだけです。

ファイル:Model.m

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

iphone - cocos2dで不規則な動きをしますか?

塗りつぶされた円が画面上で跳ね返るシンプルなアプリを作成しています。現在、円の速度は固定されていますが、ランダムに速度を上げたり下げたりしてほしいです。

もともとNSTimerを使おうとしたのですが、時間間隔を不規則にすることができないことに気づきました。Appleのドキュメントによると、NSAnimationクラスでは、「NSTimerとは異なり、アニメーション通知は不規則な間隔で発生する可能性があり、速度を上げたり下げたりするように見えるアニメーションを作成できます。」

したがって、NSAnimationクラスを使用する必要があるようです。しかし、NSAnimationでの描画プロセスを見ると、かさばり、制限されているようです。いくつかの円を作成し、それらの動作のパラメーターを定義したいので cocos2d-iphoneなどのより単純なフレームワークを使用したいと思います。

cocos2dのスケジューラーを使用して不規則な間隔を作ることはできますか?または、NSAnimationを使用する必要がありますか?

cocos2dスケジューラーは次のようになります。

0 投票する
4 に答える
6502 参照

iphone - (NSTimer のリリースと無効化) の最初のステップは何ですか?

@selectorin で引数を送信できますNSTimerか? をリリースしたい場合NSTimer、次の手順は正しいdeallocですか?

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

objective-c - スレッドを使用してアクティビティ インジケーター ビューを表示すると、gdb でこのエラーが表示されますか?

uitableviewcellのdidselectrowメソッドでこれを使用しています

正常に動作しますが、このようにgdbにエラーが表示されます

2009-08-10 12:45:01.313 Flashcards [1209:6307] * _nsautorleaseNopool():オブジェクト0x458200クラスUiviewオートリリースはプールを所定の位置に漏らしていない - (0x907d7adf 0x906e41f2 0x29a6022222020222222029a6022222029a6 10 12:45:01.314フラッシュカード[1209:6307] * _NSAUTORLEASENOPOOL():クラスNSCFストリングのオブジェクト0x2A0E8オートリリースされているプールがあります。

タイマーも試しましたがダメでした

私のタイマーコードはこれです

MyTimer = [NSTimer timerWithTimeInterval:0.01 target:self selector:@selector(showMyWaitView) userInfo:nil repeats:NO]; [[NSRunLoop mainRunLoop] addTimer:MyTimer forMode: NSDefaultRunLoopMode];

私もこれを試しました

[NSThread sleepForTimeInterval:0.03];

これが私の showMyWaitView メソッドです

これが私のしたselectrowメソッドです

タイマーを使用してアクティビティ インジケーターを表示する方法