ios - Xamarin 上的 NSItemProviderReading

标签 ios xamarin xamarin.ios ios11

要在 iOS 11 中执行文件拖放操作,您需要实现 NSItemProviderReading,这里有 swift 的示例代码:iOS 11 dropInteraction performDrop for files

但是,如何在 Xamarin 中做到这一点,我猜类定义应该是这样的,但是如何实现这些方法呢?

public class DocumentProvider : NSObject, INSItemProviderReading
{

}

最佳答案

您可以像这样实现 NSItemProviderReading:

class MyItemProvider : UIView, INSItemProviderReading {

    [Export ("readableTypeIdentifiersForItemProvider")]
    public static string [] ReadableTypeIdentifiersForItemProvider => new string [] { "public.image", "public.data" }

    [Export ("objectWithItemProviderData:typeIdentifier:error:")]
    public static MyItemProvider GetObject (NSData data, string typeIdentifier, out NSError outError)
    {
        outError = null;
        switch (typeIdentifier) {
        case "public.image": return new ...;
        case "public.data": return new ...;
        default:
            outError = new NSError (...);
            return null;
        }
    }
}

引用:NSItemProviderReading requirements .

关于ios - Xamarin 上的 NSItemProviderReading,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46448313/

相关文章:

ios - 如何在 objective-c 中使用 swift 类(不是类的实例)

ios - GKMinmaxStrategist 在返回最佳移动后修改模型

c# - 如何设置ListView的ItemsSource?

ios - 具有自定义菜单的Xamarin Forms Camera

ios - 用于在 Windows 中开发 iOS 应用程序的 Smartface 或 Xamarin

c# - Xamarin 在页面之间传递参数

ios - 使用 Xamarin iOS 进行客户端证书身份验证

ios - 将 "activity indicator"添加到TableView并在Swift中恢复为 "disclosure indicator"

ios - 尝试在异常 : _descendantWillPresentViewController 中呈现模态结果

ios - Xamarin iOS AVCaptureSession - 在 iPhone 8 上只有音频/没有视频