UIViewController.RegisterForPreviewingWithDelegate 方法

定义

为 3D Touch 速览和弹出操作注册此视图控制器。

[Foundation.Export("registerForPreviewingWithDelegate:sourceView:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 9, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public virtual UIKit.IUIViewControllerPreviewing RegisterForPreviewingWithDelegate (UIKit.IUIViewControllerPreviewingDelegate previewingDelegate, UIKit.UIView sourceView);
abstract member RegisterForPreviewingWithDelegate : UIKit.IUIViewControllerPreviewingDelegate * UIKit.UIView -> UIKit.IUIViewControllerPreviewing
override this.RegisterForPreviewingWithDelegate : UIKit.IUIViewControllerPreviewingDelegate * UIKit.UIView -> UIKit.IUIViewControllerPreviewing

参数

previewingDelegate
IUIViewControllerPreviewingDelegate

控制速览和弹出项的显示以响应用户应用的压力变化的委托。

sourceView
UIView

在接收方的视图层次结构中提供速览或预览视图的视图。

返回

预览的上下文。

属性

注解

应用开发人员调用此方法,将此视图控制器注册为显示预览和提交强制手势的视图控制器,指定在扫视前保持视觉焦点的源视图,并指定响应用户强制触摸的委托。 应用开发人员可以依赖于返回的上下文的自动生命周期管理,或通过调用 UnregisterForPreviewingWithContext(IUIViewControllerPreviewing) 方法手动释放它。

希望保留取消注册 3D Touch 速览和 pop 的选项的应用程序开发人员必须存储对 返回的 IUIViewControllerPreviewing 实例的 RegisterForPreviewingWithDelegate(IUIViewControllerPreviewingDelegate, UIView)引用,以便稍后可以将其传递给 UnregisterForPreviewingWithContext(IUIViewControllerPreviewing) 方法。

通常应在应用初始UIViewController的 重写TraitCollectionDidChange(UITraitCollection)中调用此方法。

public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
{
    base.TraitCollectionDidChange(previousTraitCollection);

    if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available) {
        // Register for 3D Touch Peek and Pop
        RegisterForPreviewingWithDelegate(new PreviewingDelegate(), View);
    }
}

适用于