使用CollectionView复制iOS7消息App UIKitDynamics

Cab*_*bus 11 objective-c ios uicollectionview uicollectionviewlayout uikit-dynamics

我知道有很多关于如何使用UIKitDynamics实现一个有弹性的collectionViewLayout的教程和讨论.

甚至有一个WWDC 13 Session视频解决了在iOS7消息应用程序中复制"消息气泡"的确切主题.

我在会话视频之后创建了自己的"弹性布局"并使用本教程,该教程还提供了实现平铺机制的详细信息,这确保了即使有数千个单元格也能顺利运行.

但是,结果仍然与我们在消息应用程序中看到的非常不同,我的目标是将EXACT SAME BEHAVIOR复制为消息应用程序.

  1. 无论我为UIAttachmentBehavior物业(长度,阻尼,频率)提供多少不同的值,我都无法获得正确的弹跳.
    会话视频说,为长度设置值> 0会破坏事物,因为单元格不会返回到它们的实际位置.但是,我只能通过设置~0.5长度来重现消息应用程序显示的平滑和快速减速?
  2. 当collectionView到达它的边界时,消息应用程序中的最后几个气泡有一个很好的夸张反弹,我的"教程实现"根本就没有反弹.

开发人员论坛中有一个讨论:Apple Dev论坛讨论

有人建议每个Cell使用多个UIAttachmentBehaviors,其他人说应用UIView - spring动画可以给你这个想要的效果.甚至假设消息应用程序根本不使用UIKitDynamics + UICollectionView.(我怀疑Apple没有使用这种明显的技术)

所以我的问题是:有没有人成功实现了Message bubbles行为的精确复制?我还能做些什么来获得有关此主题的答案?