Xamarin.Forms将下载的图像加载到Image

时间:2018-12-05 13:05:46

标签: c# xamarin xamarin.forms

下午好! 在我的应用中,我使用以下代码下载图像:

var webClient = new WebClient();
            webClient.DownloadDataCompleted += (s, e) => {
                var bytes = e.Result; // get the downloaded data
                string documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                string localFilename = "qr.png";
                string localPath = Path.Combine(documentsPath, localFilename);
                File.WriteAllBytes(localPath, bytes); // writes to local storage
            };
            var url = new Uri("https://chart.googleapis.com/chart?cht=qr&chs=150x150&chl=" + name);
            webClient.DownloadDataAsync(url);

并将其存储到本地存储。在下一个活动中,我想设置为<Image source="">标记,但是我不知道如何从存储中加载图像。请帮帮我!

1 个答案:

答案 0 :(得分:0)

第二次直接从URL直接加载图像吗?

如果没有,我建议使用the example given in the official Xamarin doc将刚刚构建的网址传递给下一个活动:

var webImage = new Image { Source = ImageSource.FromUri(new Uri("your Url")) };

如果您真的想使用刚刚存储在localStorage中的映像,则可以使用ImageSource中的FromFile attribute并将路径(例如,使用Xamarin.essentials file system)放入其中:< / p>

new Image { Source = ImageSource.FromFile("your path") };

the beggining of the documentation linked previously

中提到了此属性