【发布时间】:2021-04-06 10:32:52
【问题描述】:
在 Xamarin.Forms 预发布版中,他们发布了一个媒体选择器:https://docs.microsoft.com/en-us/xamarin/essentials/media-picker?tabs=android
这显然是一个很好的补充,而且您不必使用任何第 3 方库这一事实也很棒!
我正在创建一个活动管理应用程序 - 在应用程序中,用户可以为活动选择一张图片并能够看到它。
这是我的代码:
public async void OnSelectPhotoCommand()
{
var photo = await MediaPicker.PickPhotoAsync();
await LoadPhotoAsync(photo);
}
async Task LoadPhotoAsync(FileResult photo)
{
var newFile = Path.Combine(FileSystem.CacheDirectory, photo.FileName);
using (var stream = await photo.OpenReadAsync())
using (var newStream = File.OpenWrite(newFile)) { await stream.CopyToAsync(newStream); }
ImagePath = newFile;
}
问题是图像没有显示或出现 - 我尝试修改我的代码并对其进行调试,但我无法找到问题的根源。
我希望用户能够真正看到图像 - 但我不确定如何使用 MediaPicker 而不将其放入 Android 资源文件夹中?
谢谢,
汤米
【问题讨论】:
-
尝试使用 AppDataDirectory 而不是 CacheDirectory
-
试过了,还是不行@Jason
标签: c# android .net xamarin xamarin.forms