5

Mi piacerebbe animare il ridimensionamento di un UICollectionViewCell. Ho scritto il codice qui sotto ma non posso avere la riga return all'interno del blocco di animazione. Qualche idea?Animate UICollectionView sizeForItemAtIndexPath (Swift)

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize { 

    var newSize = CGSize(width: (self.view.frame.width), height: 0) 


    UIView.animateWithDuration(2.0, animations: {() -> Void in 
     return newSize 
    }) 

} 

risposta

0

chiamata seguente metodo se si desidera animare,

self.collectionView.performBatchUpdates(updates: (() -> Void), completion:((Bool) -> Void)?) 

Più in particolare, si dovrebbe anche gestire il cambiamento di orientamento, come qui di seguito,

override func didRotateFromInterfaceOrientation(fromInterfaceOrientation: UIInterfaceOrientation) 
{ 
    self.collectionView.performBatchUpdates(nil, completion: nil) 

}