3dtouch呈现(偷看没有流行音乐)UIView像联系人应用程序

Kle*_*son 12 ios 3dtouch

我正在尝试实现3D Touch功能,它提供了一些信息摘要(如Peek).但我不希望它流行起来.我只想预览联系人应用程序与contatcs的信息:

在此输入图像描述

它只呈现一个UIView,并没有处理两个级别的力量(偷看和弹出).

我怎么能这样做?

Ps.:我不想处理长按手势.

the*_*ahl 0

介绍

你好

我知道这可能有点晚了,但以防万一其他人偶然发现它:我当然相信这是可能的,而且我不认为它是“联系人的本机行为”。尽管它不像用于查看弹出视图的 UIKit api 那么简单。您需要:

脚步

  1. 子类UIGestureRecognizer(也许它可以与UITapGestureRecognizer也一起工作),并注册UITouches 并使用它们的force属性。

  2. 设置一个 UIViewController ,其边缘周围有透明但模糊的背景(如果我没记错的话,还有 modalPresentationStyle .overCurrentContext),中间有您想要的内容(很像窥视视图)。然后UIPanGestureRecognizer向中心视图添加一个用于关闭/向上滑动按钮的按钮。

  3. 然后创建一个自定义动画过渡,一旦子类注册的属性足够高,就会UIViewController触发该动画过渡。一旦财产变得足够低,就会逆转。forceUITouchesUIGestureRecognizerforce

结束语

我相信这是一项有点乏味的任务,可能有一种更简单的方法。例如,使用第三方库进行长压力手势(记录触摸大小)的更简单方法,但它不会给出相同的感觉。