进行文件拖动&删除iOS 11中的文件您需要实现NSItemProviderReading
,这里有Swift的示例代码:iOS 11 DropInteraction for Files 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要求。