我尝试共享文件内容的NSData对象,活动视图显示邮件选项,然后邮件撰写控制器显示,但没有附件。
我尝试与文件的路径共享一个NSUrl,但是在这种情况下,当活动视图出现时,它会占用整个屏幕,但除了底部的“取消”按钮外,它是空白的。奇怪的。此外,活动视图仅在设备上出现,它甚至从未出现在模拟器上。
如果我将NSData转换为NSString,那么它确实有效,但它只是将字符串粘贴到电子邮件的正文中。我不想那样,我想附上一个文件。
我已经使用调试器来验证NSData对象是否具有(正确的)数据,并且NSUrl对象具有正确的文件路径。没有骰子。
var documents = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
var file = Path.Combine(documents, "file.txt");
NSData dataToShare = NSFileManager.DefaultManager.Contents(file);
UIActivityViewController activityViewController = new UIActivityViewController(new NSObject[] { dataToShare }, null); //Email comes up but data isn't attached
// OR
UIActivityViewController activityViewController = new UIActivityViewController(new NSObject[] { new NSUrl(file) }, null); //Activity view takes up the whole screen and is blank
// OR
UIActivityViewController activityViewController = new UIActivityViewController(new NSObject[] { (NSString)dataToShare.ToString() }, null); //Pastes string into email body