 extension BQMainViewController: UICollectionViewDelegateFlowLayout {
     
     func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
-        return collectionView.size
+        if itemSize == .zero {
+            return collectionView.size
+        } else {
+            return itemSize
+        }
     }
 }

private let mainCellReuseID = UICollectionViewCell.nameOfClass

class BQMainViewController: UIViewController {
    
    // MARK: - Properties
    fileprivate lazy var subControllers: [UIViewController] = {

        let subContr = subControllers[indexPath.item]
        if !subContr.isViewLoaded {
            addChildViewController(subContr)
            cell.addSubview(subContr.view)
            subContr.view.snp.makeConstraints({ (make) in
                make.edges.equalToSuperview()
            })
            subContr.didMove(toParentViewController: self)
        } else {
            cell.addSubview(subContr.view)
            subContr.view.snp.makeConstraints({ (make) in
                make.edges.equalToSuperview()
            })
