In Ordnung, ich habe eine UICollectionViewFlowLayout, die federähnliche Animationen beim Scrollen ähnlich wie die iOS-Nachrichten App unterstützt. Wie auch immer, nach der Umstellung auf Swift 2.0 scheint sich UIDynamics komplett verändert zu haben. Ich versuche, die folgenden Blöcke zu konvertieren, aber ich kann es einfach nicht herausfinden und die Dokumentation von Apple ist hier sehr uninteressant. Folgende Bausteine müssen noch umgesetzt werden:UIDynamics Problem in iOS 9/Swift 2.0
var noLongerVisibleBehaviors = self.dynamicAnimator.behaviors.filter({behavior in
var currentlyVisible = itemsIndexPathsInVisibleRectSet.member(behavior.items![0].indexPath) != nil
return !currentlyVisible
})
for (index, obj) in noLongerVisibleBehaviors.enumerate() {
self.dynamicAnimator.removeBehavior(obj)
self.visibleIndexPathsSet.removeObject(obj.items![0].indexPath)
}
Beiden Blöcke verursachen den Fehler:
"Value of type 'UIDynamicBehavior' has no member 'items' "
Dann habe ich:
override func layoutAttributesForElementsInRect(rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
return self.dynamicAnimator.itemsInRect(rect)
}
, die den Fehler erzeugt:
"Cannot convert return expression of type '[UIDynamicItem]' to return type '[UICollectionViewLayoutAttributes]?' "
Irgendwelche Ideen auf wie kann ich das umwandeln? Ich weiß, dass swift 2 sehr neu ist, aber ich kann nichts online finden und wie gesagt, die Dokumentation zu UIKitDynamicBehavior fehlt zumindest. Vielen Dank im Voraus für Ihre Hilfe!