with uitableviewcell multiple example different custom ios iphone uitableview uicollectionview uikit-dynamics

ios - uitableviewcell - UIKit Dynamics en un UITableView



uitableview with multiple custom cells swift (2)

¿Puede agregar el efecto de celdas elásticas al desplazarse (como en la aplicación de Mensajes en iOS7) a un UITableView ? He visto ejemplos de ello trabajando en un UICollectionView , pero no hay absolutamente nada para las vistas de tabla.

¿No es posible y debería cambiar cada vista de tabla a una vista de colección y rehacer todas las celdas?


En la sesión de la WWDC 2013 Explorando vistas de desplazamiento en iOS 7, se habla de cómo hacer este efecto con una vista de colección y UIKit Dynamics. Me imagino que es mucho más fácil hacerlo con una vista de colección que con una vista de tabla, ya que es más fácil colocar las celdas. Puede haber un código de ejemplo para acompañar la sesión.


Lamentablemente no.

Cada UICollectionView tiene un objeto de diseño (una subclase UICollectionViewLayout ) que describe dónde debe ir cada celda en la vista de desplazamiento de la vista de colección y qué celdas son visibles en un CGRect determinado. UITableView no tiene esto, por lo que sería mucho más difícil hacer algo que manipule la posición de sus celdas.

Además de animar objetos UIView , UIKit Dynamics se puede usar para animar UICollectionViewLayoutAttributes directamente, que es necesario para una clase de estilo UITableView o UICollectionView que tiene celdas reutilizables que pueden no estar todas en la pantalla, pero que aún serían parte de la "física". UIDynamicAnimator métodos UIDynamicAnimator , como layoutAttributesForCellAtIndexPath: pueden utilizarse para completar su objeto de diseño.

No existe un objeto de diseño equivalente para un UITableView ni un código equivalente de UIDynamicAnimator para operar en celdas fuera de pantalla de UITableView , es probable que sea mucho más fácil cambiar a un UICollectionView si desea este comportamiento.