問題タブ [uidynamicanimator]

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 に答える
647 参照

ios - メインメニューから戻った後、UIDynamicsAnimator がエラーを引き起こす

2 つのビュー コントローラーがあります。1 つはメイン メニュー、もう 1 つはゲームです。ゲームにはドロップするボックスがあり、ユーザーがそれをキャッチしないと、画面から落ちて上部の元の位置にリセットされます。

アプリはメイン メニューに読み込まれ、初めてプレイするときは完璧に動作します。何回でも問題なくプレイできます。ただし、メイン メニュー (モーダル セグエ) に戻ってからゲームに戻ると、アニメーションを再開しようとするとすぐに、「ボックスは参照ビューの子孫である必要があります」というエラーが表示されます。 UIDynamicAnimator」. この特定のセクションのコードを以下に示します。

何時間も検索しましたが、なぜこれが起こっているのかわかりません。ビュー コントローラを完全に更新して、最初と同じように動作させることはできますか? UIDynamicAnimator の referenceview パラメータを変更する必要がありますか? 私は途方に暮れています。誰か助けてください!!

(上記のコードは IBAction にあることに言及する必要がありますが、追加しようとしてもviewDidLoad役に立ちませんでした....)

また、私が得ている公式のエラーは

キャッチされていない例外 'NSInvalidArgumentException' が原因でアプリを終了しています。 UIDynamicAnimator の参照ビューの子孫である必要があります: UIView の 0x7ffb11da8120 (0.000000s): 0x7ffb11da84c0 {{0, 0}, {375, 667}}

「ボックス」の初期化に関係するすべてのコードは次のとおりです。

基本的に、ボックスは落下して下に回転し、画面から落ちるとアニメーションが停止し、ユーザーが再度ボタンを押すまで、ボックスは上部の元の位置に置き換えられます。

*****編集: 役立つ情報がいくつかあります。ゲームをプレイし、メイン メニューに戻ってもう一度戻ってきたときに、プログラムでボックスに何かを行うと、アプリがクラッシュします。ViewDidLoad にタグを追加しようとしたところ、クラッシュしました。箱に何か入っているはずなのですが、さっぱりわかりません。

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

ios - Autolayout が実行中の場合の UIDynamicAnimator によるアニメーション化

すべてのサブビューに AutoLayout を使用するように InterfaceBuilder で構成された ViewController があります。レイアウトはうまく機能しています。

UIDynamicAnimator が提供するクールな重力効果を使用して、サブビューの 1 つをバウンスさせたいと考えています。AutoLayout でうまくいくとは思いませんでしたが、試してみたところうまくいきました。それはかなりうまくいきます!

私の質問は、これは予想される動作ですか? どこかで問題を起こすのでしょうか?Apple は、AutoLayout と UIDynamicAnimators の組み合わせに関するガイダンスを提供していますか?

興味のある人のためのコードは次のとおりです。

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

ios - UIDynamicAnimator からのクラス継承で addChildBehavior を使用できない理由

Stanford CS193P で ios を学習していますが、講義 8 で問題が発生しました

UIDynamicAnimator から DropItBehavior 継承という名前のクラスを作成しましたが、UIDynamicAnimator メソッド addChildBehavior を使用できません。「"DropItBehavior" の目に見える @interface がセレクター 'addChildBehavior' を宣言していません」のような xcode 警告

ここに.hファイルがあります

ここに.mファイルがあります

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

ios - UIDynamicAnimator が重力の変化に反応しなくなる

https://stackoverflow.com/questions/28275004/uidynamicanimator-stop-reacting-to-uigravitybehaviorに記載されているのとまったく同じ問題が発生しました。私もそれをうまく説明することはできません。

UIDynamicAnimator がオブジェクト/アイテムにUIGravityBehaviorアタッチされているアニメーション化を突然停止する理由を知っている人はいますか?

編集

Big Nerd Ranchの例を実行しています

エラーを簡単に再現できるように、キューブが 2 つだけになるように例を変更しました。立方体は落下し、重力にうまく反応していますが、立方体が角にぶつかり、互いに接触するように電話を傾けると、動きが停止し、重力の動作に反応しなくなります.

これがSwiftの問題なのかどうかも疑問です。Obj-C でこれを実装して、エラーが続くかどうかを確認する必要があるかもしれません。

次に例を示します。

EDIT2

UIGravityBehavior への応答を停止するために、互いに接触する必要がないことに気付きました。

EDIT3

わかりました、どういうわけかSwiftのバグのようです。私は ObjC で同じことを実装しましたが、まったく問題はありません。

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

ios - UIView iOS コントロール センターのように跳ねる

iOS コントロール センターと同様の動作ができる UIView を作成しようとしています。私の現在のコードは、プルアップして表示し、プルダウンして非表示にすることができます。

デモ: マイプログラム iOS コントロール センター

質問 1: 誰かが例を挙げたり、これを達成する方法を説明したりできますか?

質問 2 (ここにいくつかの愚かな質問): iOS コントロール センターはどのように実装されていますか? UIViewController または UIView を使用していますか?

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

ios - UICollisionBehavior 境界が機能しない

ナビゲーションコントローラー内にビューがあります。

次に、このビューにサブビューを追加し、元の高さをオフセットして、画面の半分だけをカバーするようにします (残りの半分は画面の下部からはみ出します)。このビューを上にドラッグできるようにしたいのですが、ナビゲーションバーの下部に到達すると停止します。

UIPanGestureRecognizerビューのドラッグを処理するためにa を使用していますが、これは正常に機能しますが、境界で停止しているようには見えません。

これは私が使用しているコードです:

ただし、カバービューを上にドラッグすると、境界と相互作用することはなく、まっすぐ通過します。私は何を間違っていますか?このようにユーザーがドラッグしているビューを境界を使用して停止することはできますか?