問題タブ [uicollisionbehavior]

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

ios - UIview による重力

UIViewの助けを借りて円を描きましたUIBezierPath。次に、 を使用してそのビューに重力動作を追加し、 を使用UIGravityBehaviorして衝突動作を追加しましUICollisionBehaviorた。円が他のオブジェクトと衝突すると、このビューは四角にぶつかりますが、このビューを円と同じように衝突させたいと思います。どうすればいいですか?

提供されたスクリーンショット

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

ios - Swift で複数のオブジェクトに Gravity 動作を追加する

画面の周りにたくさんの正方形のブロックが浮かんでいて、互いに跳ね返ったり、壁などが破壊されるまでゲームを構築しています。現在、マスターがUIGravityBehaviorあり、各正方形 ( UIViewSquareView というクラス) を作成時に追加し、破棄されたら削除します。しかし、これは SquareView オブジェクト内で行うべきだと思います。関連するコードは次のとおりです。

...

...

したがって、このコードをViewControllerSquareView クラスの定義の外に移動する必要があると思います。

ちなみに、私は同じことを行い、UICollisionBehaviorそれも最適ではないと想定しています。

どんな助けでも素晴らしいでしょう!

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

ios - 境界を設定するための UICollisionBehavior の使用

私はiosプログラミングの初心者です。UiCollisionBehavior を使用してドロップするアイテムの境界を設定するときに、次のコードを ViewController.m に追加しました。

ただし、myView はドロップせず、元の位置にとどまりました。誰かが理由を教えてもらえますか?

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

ios - UICollisionBehavior - ビューは境界を通過します

UICollisionBehaviour の実装の一環として、画面の端に境界を設定しました。次に、いくつかのビューを追加し、最終的にそれらの 1 つに UIPanGestureRecognizer をアタッチしました。

これで、ドラッグ可能なビューを使用して小さいビューを移動できます。

ハンマータイム!

問題: 小さいビューを隅に置いて画面の端に押し付け続けると、最終的には境界をすり抜けて反対側に引っかかってしまいます。他のビューを叩いたり押したりするために使用する「ハンマービュー」も、境界に引っ掛かります。つまり、画面の端に引っかかったり、ドラッグできなくなったりします。

ビューが非常に少なく、競合する動作がなく、ビューがまだ境界を通過しているときに再現できるかどうかを確認するために、非常に小さな例を作成しました。UIDynamics があまり処理できないか、または (より可能性が高い) どういうわけか間違って構成しています。

以下の小さな例では、奇妙な動作をしています。

}

助けてくれてありがとう。

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

ios - UICollisionBehavior は開いているパスを閉じたものとして扱いますか?

開いた UIBezierPath を定義し、それを衝突境界として設定した場合:

次に重力をオンにすると、「ボウル」の内側に解放されたオブジェクトは下限を尊重しますが、ボウルの上から解放されたオブジェクトは存在しないと思われる側に静止します。これは予想される動作ですか?

落下直角

写真では、赤い四角形が上からドロップされています。ダイナミック アニメーターの参照ビューは、ライト グレーの四角形です。上から落ちてきて見えないラインで止まった。

ベジェ パスをひっくり返すと、実際には赤い四角形が曲線の境界を尊重することを確認しました。また、曲線パスの代わりに開いた(両面)三角形を使用してこれを試しました-同じ結果です。

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

ios - UICollisionBehavior 境界が機能しない

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

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

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

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

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

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

swift - Swiftでパンジェスチャを使用してUIViewに衝突を追加する

Spritekit を使用せずに Xcode で卓球ゲームを作成しようとしています。ボールとパドルには UIVeiws を使用しています。パドルを動かすために、ストーリーボードでパン ジェスチャ レコグナイザーを使用し、それを UIView に接続しました。

パドルに衝突を追加したいのですが、パドルと一緒に移動する必要があります。現在、addBoundaryWithIdentifier を使用すると、パドルが原点にある場合にのみ機能します。

助けて!これまでの私のコードは次のとおりです...

クラスViewController:UIViewController、UICollisionBehaviorDelegate {

}