                 options: animationOptions,
                 animations: {
                     morphingView.frame = sourceVCView.bounds
-                    morphingView.setNeedsLayout()
-                    morphingView.layoutIfNeeded()
+//                    morphingView.setNeedsLayout()
+//                    morphingView.layoutIfNeeded()
                     if let _ = self.fromView as? UITableViewCell {
                         contentView?.frame = morphingView.bounds
                     }

        
        var morphingView: UIView?
        var contentView: UIView?
        let isMorphingCopy = true
        if isMorphingCopy {
            // Create a copy of the view hierarchy for morphing, so the original is not changed.
            if let cell = fromView as? UITableViewCell {
                morphingView = cell.copyWithSubviews(nil, includeConstraints: true)
                morphingView?.copySubviews(cell.contentView.subviews, includeConstraints: true)
            } else {
                morphingView = fromView?.copyWithSubviews(fromView?.subviews, includeConstraints: true)
            }
            if let morphingView = morphingView {
                sourceVCView.addSubview(morphingView)

                { finished in
                    self.sourceViewController.navigationController?.pushViewController(self.destinationViewController,
                        animated: false)
                    if useCopyForMorphingView {
                        morphingView.removeFromSuperview()
                        // morphingView.hidden = true // Keep it for reverse animation?
                    }
