1
iOSデバイスで既存のPDFファイルを開こうとしています。 このファイルは、デフォルトのPDFリーダーで開く必要があります。iOSでPDFファイルを開くには?
この時点では、「依存サービス」を使用してネイティブコードを実行しています。
このコードを実行すると、何も起こりません(ファイルのみが書き込まれます)。
iOSデバイスで既存のPDFファイルを開こうとしています。 このファイルは、デフォルトのPDFリーダーで開く必要があります。iOSでPDFファイルを開くには?
この時点では、「依存サービス」を使用してネイティブコードを実行しています。
このコードを実行すると、何も起こりません(ファイルのみが書き込まれます)。
標準のUIViewControllerを使用し、パス(ここでpdfがデバイスに保存されている場所)をコントローラに渡し、UIWebviewにロードしました。
public class PdfController : UIViewController
{
public PdfController(string pdfPath)
{
NavigationItem.LeftBarButtonItem = new NavBarButton("Back", (sender, args) =>
{
NavigationController.PopViewController(true);
});
var webView = new UIWebView(View.Bounds);
View.AddSubview(webView);
webView.LoadRequest(new NSUrlRequest(new NSUrl(pdfPath, false)));
webView.ScalesPageToFit = true;
}
}
しかし、あなたが最初にそれをダウンロードし、このsnippitあなたはPDFをダウンロードして保存できるようになります。このコントローラ にそれを渡す必要があります。
Public void DownloadPDF()
{
Utility.AddNetworkConnection();
var webClient = new WebClient();
loadingView = new LoadingView();
loadingView.Show("Downloading PDF");
webClient.DownloadDataCompleted += (s, e) =>
{
Utility.RemoveNetworkConnection();
File.WriteAllBytes(_pdfPathLocation, e.Result); // writes to local storage
InvokeOnMainThread(() =>
{
loadingView.Hide();
_pdfImageElement.SetValueAndUpdate("Open PDF");
var a = new UIAlertView("Done", "File downloaded and saved", null, "OK", "Open PDF");
a.Show();
a.Clicked += OpenPdf;
});
};
var url = new Uri(_wreck.PdfURL);
webClient.Encoding = Encoding.UTF8;
webClient.DownloadDataAsync(url);
}
ファイルは現在存在します。 – Nyxero
先頭スニペットpdfPathは、電話機のファイルの場所です。ダウンロードしたPDFが開きます – InitLipton