                                constant: 0.0)
             ])
     }
+
+    override open func prepareForReuse() {
+        super.prepareForReuse()
+
+        // Without this overriden function, the spinner would stop animating when reused.
+        // Cf. http://stackoverflow.com/questions/28737772/uiactivityindicatorview-stops-animating-in-uitableviewcell
+        configureToInitialLoadingState()
+    }
 }
 
 

        super.init(frame: frame)
        configureToInitialLoadingState()
    }
    
    required public init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }

    }

    public func configure<A>(load: (@escaping (Result<A>) -> ()) -> (),
                          build: @escaping (Result<A>) -> UICollectionViewCell) {
        // TODO: this call might not be necessary since the prepareForReuse func
        // was overriden.
        configureToInitialLoadingState()

        load() { [weak self] result in
