簡體   English   中英

UICollisionBehavior的問題

[英]Problems with UICollisionBehavior

我不確定是否只是在UICollisionBehavior發現了一些錯誤,或者我只是沒有正確實現它。

我有兩個主要問題。

1)定期創建一個UICollisionBehavior ,它只有兩個項目,一個播放器和一個新項目,它要么從頂部掉落,要么從屏幕底部向上推。

但是,偶爾會有兩個項目(不是播放器)相互碰撞。 但是,當我將碰撞記錄在動畫器中時,它們都只有兩個項目,即播放器和下降/上升項目。

根據UICollisionBehavior類引用的沖突:

您可以將多個碰撞行為添加到動態動畫師。 一個動態項目可以是任何數量的碰撞行為的一部分,前提是這些行為屬於同一動畫師。 例如,您可以為一組說成藍色的項目指定碰撞行為,而為一組說成粉紅的項目指定碰撞行為。 將兩種行為都添加到動態動畫制作器中時,藍色項目可以相互碰撞,而粉紅色項目可以相互碰撞,但是藍色項目和粉紅色項目不會發生碰撞-它們將相互忽略。

使用上面的示例,我的粉紅色項目和藍色項目發生碰撞,盡管它們的碰撞行為不同。

2)點擊屏幕時,用UIPushBehavior推動了我的播放器,但是UIPushBehavior沒有捕獲到播放器與某項之間的碰撞(下降/上升)。

我不知道上述問題是否相關,因此我暫時將它們放在同一個問題中。

有誰知道這可能是什么? 有沒有人發現這是一個錯誤?

一如既往的感謝。

UICollisionBehavior具有UICollisionBehaviorMode

typedef NS_OPTIONS(NSUInteger, UICollisionBehaviorMode) {
    UICollisionBehaviorModeItems        = 1 << 0,
    UICollisionBehaviorModeBoundaries   = 1 << 1,
    UICollisionBehaviorModeEverything   = NSUIntegerMax
} NS_ENUM_AVAILABLE_IOS(7_0);

默認值為UICollisionBehaviorModeEverything因此項目將與邊界以及其他項目發生碰撞。 您需要將此屬性設置為UICollisionBehaviorModeBoundaries

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM