問題タブ [animatewithduration]

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 投票する
1 に答える
269 参照

ios - 新しいアニメーションの開始時にスケール アニメーションが停止する

こんにちは、画面の周りでアニメーション化する約 10 個の UIButtons があります。ユーザーがいずれかをタップすると、ボタンが拡大され、画面上の特定のポイントまで移動および縮小されます。

私はアニメーションを管理するために単一の方法を使用しています。メソッドがそのボタンでアニメーションを実行できるように、UIButton のインデックス番号をメソッドに渡します。アニメーションは正常に動作しますが、タップした前のボタンの縮小と移動のアニメーションが終了する前に 2 番目のボタンをタップすると終了します。前にタップしたボタンの縮小アニメーションは停止しますが、その移動アニメーションは完了します。

これが私のコードです。

}

スケールアップアニメーションの完成に、スケールダウンと移動アニメーションを入れます。

BubbleToHide 変数は、渡されたインデックスを使用して Bubbles 配列から取得された各 UIButton への個別の参照を保持する必要があります。

コードの上部にある NSLog で確認できますが、2 番目の UIButton がタップされ、前にタップされたボタンで scaleDown が完了していないときはいつでも。前のボタンの scaleDown はキャンセルされます。ただし、移動アニメーションは完了するので、代わりに素敵なボタンの列が表示されます。正しい位置にあるボタンがあり、scaleUp 係数と scaleDown 係数の間でサイズが固定されています。次のボタンがどれだけ速くタップされたかに応じて。

なぜこれが起こるのですか?または修正?

ありがとう。

0 投票する
0 に答える
422 参照

ios - UIView animateWithDuration & UIView commitAnimations が奇妙な動作を停止する

私のアプリには次のようなアニメーションがあります。

そしてこのように

それらはかなりうまく機能していますが、アプリケーションで何かを始めたとき、たとえば写真ページにアクセスしたときなど、すべての写真を nsthread に読み込んでいます。 it) これらのアニメーションはすべて動作を停止し、一時的にではなく、すぐにアニメーション化されます。

コードで UIView animateWithDuration と UIView commitAnimations 全体を停止する理由は何ですか?

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

objective-c - animateWithDuration のフレームレートと速度関数は何ですか

上記の使用を独自のカスタムアニメーションメソッドに置き換えています。ただし、これが持つ標準的な効果は非常に気に入っています。

だから私の質問は、animateWithDuration のフレーム レートは何ですか?

animateWithDuration の機能は何ですか? それを実装する方法などのアルゴリズムを知る必要はありません。速度/加速度の数式だけです。

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

ios - 目的 c でセマフォを使用してアニメーションを実行し、完了を待つメソッドを作成する

UIView の「+animateWithDuration:animations:completion」メソッドを使用してアニメーションを実行し、完了を待つメソッドを作成しようとしています。通常はその後に来るコードを完了ブロックに配置できることをよく知っていますが、その後にアニメーションを含むかなりの量のコードがあり、ネストされたブロックが残るため、これを避けたいと思います.

セマフォを使用して以下のようにこのメソッドを実装しようとしましたが、特に実際には機能しないため、これが最善の方法だとは思いません。私のコードの何が問題なのか、同じ目標を達成するための最良の方法は何か教えてもらえますか?

コードの何が問題なのかわかりませんが、以下に示すようにメソッドを呼び出すと、完了ブロックが実行されず、行き詰まってしまいます。

- - - - - - - - - - - - - - - - - - - - - -編集 - - - -------------------------------------------

誰かが同様の問題に直面している場合は、私が使用したコードを参照してください。各関数呼び出しをネストすることなく、再帰を使用して各完了ブロックを利用します。

そのように使用できます