首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >像邮件一样的3D触摸窥视

像邮件一样的3D触摸窥视
EN

Stack Overflow用户
提问于 2015-11-24 06:17:01
回答 2查看 1.3K关注 0票数 10

使用3DTouch Peek和Pop功能,模仿下面描述的功能最有效的方法是什么(同时滑动“窥视”内容以执行操作)?下面的截图来自iOS本地邮件应用程序。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-06 19:52:37

更新

您可以在iOS 10上复制这种效果。有一组名为UIPreviewInteractionUIPreviewInteractionDelegate的新API,可以为peek/pop交互提供自定义表示。我强烈推荐在今年的WWDC观看3D触摸的窥视

原始答案

看看iOS运行时头,有一个名为UIPreviewPresentationController的类。那是负责窥视的控制器。在其中,有对名为leadingPreviewActiontrailingPreviewAction的对象的引用。它们有相应的属性来处理边缘约束和中心。从使用引线和尾随(如汽车布局)判断,这些可能对应于左右动作项目。

这是猜测,但我认为这些相关的私有类(_UIPreviewQuickActionView)控制着您正在寻找的行为。现在还没有。

同样,UIPreviewAction的文档说:

当用户向上滑动时,预览操作或快速查看操作将显示在peek 下面。快速查看操作通常会选择一个指向应用程序的深度链接,并有一个标题、样式和处理程序。

票数 9
EN

Stack Overflow用户

发布于 2015-12-11 12:32:50

要使用Peek Quick ,您的detailledViewControler (或您命名的名称)应该像这样覆盖previewActionItems

代码语言:javascript
复制
lazy var previewActions: [UIPreviewActionItem] = {
        func previewActionForTitle(title: String, style: UIPreviewActionStyle = .Default) -> UIPreviewAction {
            return UIPreviewAction(title: title, style: style) { previewAction, viewController in
                guard let detailViewController = viewController as? DetailViewController,
                          item = detailViewController.detailItemTitle else { return }

                print("\(previewAction.title) triggered from `DetailViewController` for item: \(item)")
            }
        }

        let action1 = previewActionForTitle("Default Action")
        let action2 = previewActionForTitle("Destructive Action", style: .Destructive)

        let subAction1 = previewActionForTitle("Sub Action 1")
        let subAction2 = previewActionForTitle("Sub Action 2")
        let groupedActions = UIPreviewActionGroup(title: "Sub Actions…", style: .Default, actions: [subAction1, subAction2] )

        return [action1, action2, groupedActions]
    }()


override func previewActionItems() -> [UIPreviewActionItem] {
    return previewActions
}

您可以在这里找到完整的代码:https://developer.apple.com/library/ios/samplecode/ViewControllerPreviews/ViewControllerPreviewsUsingtheUIViewControllerpreviewingAPIs.zip

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33886695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档