Xamarin.Forms Xamarin Android

Xamarin.Forms Xamarin Android,xamarin,xamarin.forms,Xamarin,Xamarin.forms,我的要求是在Xamarin.Forms中保存一个文件,如下图所示,迄今为止我尝试的是: public class CustomWebViewRenderer : WebViewRenderer { protected override void OnElementChanged (ElementChangedEventArgs<WebView> e) { base.OnElementChanged (e); if (e.NewEl

我的要求是在Xamarin.Forms中保存一个文件,如下图所示,迄今为止我尝试的是:

public class CustomWebViewRenderer : WebViewRenderer
{

    protected override void OnElementChanged (ElementChangedEventArgs<WebView> e)
    {

        base.OnElementChanged (e);

        if (e.NewElement != null)
        {

            var customWebView = Element as CustomWebView;
            Control.Settings.AllowUniversalAccessFromFileURLs = true;

            string root = Android.OS.Environment.ExternalStorageDirectory.ToString();
            // Java.IO.File myDir = new Java.IO.File(root + "/WingsPdfs");
            // myDir.Mkdir();
            string path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
            Java.IO.File file = new Java.IO.File(path, "WingsPdfGenerated.pdf");
            FileOutputStream outs = new FileOutputStream(file);
            outs.Write(customWebView.PdfStream.ToArray());
            outs.Flush();
            outs.Close();
            try
            {
                Control.LoadUrl(string.Format("file:///android_asset/pdfjs/web/viewer.html?file={0}", file));
            }
            catch(Exception ex)
            {

            }

    }
    }
}
公共类CustomWebViewRenderer:WebViewRenderer
{
受保护的覆盖无效OnElementChanged(ElementChangedEventArgs e)
{
碱基。一个元素改变(e);
if(例如NewElement!=null)
{
var customWebView=作为customWebView的元素;
Control.Settings.allowuniversalaccessfromfileurl=true;
string root=Android.OS.Environment.ExternalStorageDirectory.ToString();
//Java.IO.File myDir=new Java.IO.File(root+“/WingsPdfs”);
//myDir.Mkdir();
字符串路径=Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
Java.IO.File File=new Java.IO.File(路径“wingsdpfgenerated.pdf”);
FileOutputStream outs=新的FileOutputStream(文件);
out.Write(customWebView.PdfStream.ToArray());
out.Flush();
out.Close();
尝试
{
Control.LoadUrl(string.Format(“file:///android_asset/pdfjs/web/viewer.html?file={0}(文件));
}
捕获(例外情况除外)
{
}
}
}
}
在上面的代码中,我硬编码了文件的位置,但我希望用户选择特定位置并保存到所选位置。 多谢各位


很难说出你想要什么。这个问题有点让人困惑,你能解释一下吗?我正在使用Dependency service生成一个xamarin表单中的pdf,并像上面的代码一样保存pdf文件,但我的要求是像上面的图片一样保存文件。提前谢谢。