我正在使用Xamarin iOS。我想让我们的应用程序在默认阅读器中打开.pdf文件。对于Android,我设法通过以下两个过程来完成它:(1)将文件从Assets文件夹复制到Android设备的下载文件夹,以及(2)启动活动以查看文件。 / p>
我找不到iOS的任何类似资源。我们不想在Xamarin website,中使用该控件,因为它涉及下载大量JavaScript(?)代码,使应用程序的大小更大,并且也不支持捏屏幕缩放。我们希望使用操作系统的默认pdf阅读器。
谢谢。
答案 0 :(得分:1)
方法1:
将Build Action设置为BundleResource。您可以通过右键单击该文件并在打开的菜单中选择“构建操作”来设置文件的构建操作
创建一个UIWebView并将其添加到视图中:
webView = new UIWebView (View.Bounds);
View.AddSubview(webView);
使用NSUrl和NSUrlRequest类加载文件:
string fileName = "Loading a Web Page.pdf"; // remember case-sensitive
string localDocUrl = Path.Combine (NSBundle.MainBundle.BundlePath, fileName);
webView.LoadRequest(new NSUrlRequest(new NSUrl(localDocUrl, false)));
webView.ScalesPageToFit = true;
方法2:
public void OpenFile (NSUrl fileUrl)
{
var docControl = UIDocumentInteractionController.FromUrl (fileUrl);
var window = UIApplication.SharedApplication.KeyWindow;
var subViews = window.Subviews;
var lastView = subViews.Last ();
var frame = lastView.Frame;
docControl.PresentOpenInMenu (frame, lastView, true);
}