如何与UIActivityViewController共享文本文件

时间:2014-02-27 18:12:09

标签: ios xamarin.ios xamarin uiactivityviewcontroller

我尝试共享文件内容的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

0 个答案:

没有答案