2017-05-05 2 views
0

Je suis en train de mettre en œuvre la pop/out animation de transition trouvé dans ce git: https://github.com/freedom27/PopInAndOutCollectionViewTransitionPop out animation de transition

Le code est destiné à un UICollecitonView, cependant, j'ai une UIViewController qui a un UiCollectionView intégré à l'intérieur. En raison de cela, je continue à obtenir une erreur avec mon protocole:

protocol CollectionPushAndPoppable { 
    var sourceCell: UICollectionViewCell? { get } 
    var collectionView: UICollectionView? { get } 
    var view: UIView! { get } 
} 

L'erreur dit en substance que mon ViewController ne se conforme pas au protocole.

extension CollectionViewController: CollectionPushAndPoppable {} 

Cette ligne me donne l'erreur.

Comment puis-je fixer le protocole afin qu'il soit conforme à CollectionView dans mon UIViewController

Répondre

0

Pour se conformer à un protocole, votre objet doit mettre en œuvre toutes les fonctions et les propriétés. Dans ce cas, vous devez ajouter ces propriétés à votre CollectionViewController. Si votre CollectionViewController est un UIViewController, il a déjà une propriété view.

extension CollectionViewController: CollectionPushAndPoppable { 

    var sourceCell: UICollectionViewCell? { 
     return UICollectionViewCell() 
    } 

    var collectionView: UICollectionView? { 
     return myViewController 
    } 

} 

Vous pouvez en savoir plus sur les protocoles dans la documentation officielle de Swift: https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Protocols.html