I think the issue was by ths following , There's a little trick where you can track the user's touch location while Peeking. You basically have a gesture recognizer that begins tracking the user's touch location when you start Peeking and ends tracking once the user Pops the view controller or releases his/her touch. The gesture recognizer should be added to the view of the view controller that is bringing up the Peek.
I think the issue was by ths following , Peek And Pop Effect on a TableViewCell and Collection View Cell With Actions 1)You should address your caller viewController class as UIViewControllerPreviewing Delegate
@property (nonatomic, strong) id previewingContext;
it helps some times So it turns out that 3D-touch (or force-touch or whatever it's called) isn't only available through the implementation of UIViewControllerPreviewingDelegate. This delegate's job is to decide what to present with peek/pop, while the core function of peek and pop can be accessed through a normal UIGestureRecognizer. I followed this guide to create my own ForceGestureRecognizer, but decided to subclass UILongPressGestureRecognizer instead of UIGestureRecognizer (to combine it with existing functions). That guide, along with this (to create the little shake feedback using UINotificationFeedbackGenerator), and together with some CGAffineTransform-changes based on the force of the touch really made it perfect.