MediaPicker不使用Xamarin.Forms
我是xamarin的新手。在我的项目“选择图像”的开放图库中,我使用了IMedipicker界面。我的代码如下:MediaPicker不使用Xamarin.Forms,xamarin,xamarin.ios,xamarin.android,xamarin.forms,xamarin-studio,Xamarin,Xamarin.ios,Xamarin.android,Xamarin.forms,Xamarin Studio,我是xamarin的新手。在我的项目“选择图像”的开放图库中,我使用了IMedipicker界面。我的代码如下: IMediaPicker mediaPicker; ImageSource imageSource; async void OnTapEntertainer(object sender, EventArgs args) { await TakePicture(); } private async Task TakePicture() {
IMediaPicker mediaPicker;
ImageSource imageSource;
async void OnTapEntertainer(object sender, EventArgs args)
{
await TakePicture();
}
private async Task TakePicture()
{
mediaPicker = DependencyService.Get<IMediaPicker>();
imageSource = null;
var mediaFile = await mediaPicker.SelectPhotoAsync(new CameraMediaStorageOptions
{
DefaultCamera = CameraDevice.Front,
MaxPixelDimension = 400
});
imageSource = ImageSource.FromStream(() => mediaFile.Source);
Imgmn.Source = imageSource;
}
IMedipicker mediaPicker;
图像源图像源;
异步void ontapentainer(对象发送方、事件args args)
{
等待拍照();
}
私有异步任务TakePicture()
{
mediaPicker=DependencyService.Get();
imageSource=null;
var mediaFile=wait mediaPicker.SelectPhotoAsync(新的摄像机存储选项
{
DefaultCamera=CameraDevice.Front,
MaxPixelDimension=400
});
imageSource=imageSource.FromStream(()=>mediaFile.Source);
Imgmn.Source=图像源;
}
我在这段代码中得到了mediaPicker为空值。请帮助我解决这个问题。
我增加了执行功能所需的功能。根据评论,以下过程解决了问题: 在.Droid库项目中添加依赖项服务类以解析中给出的IMedipicker,并使用
[assembly:Xamarin.Forms.Dependency(typeof(MediaPicker))]
要使用XLabs中的MediaPicker项,请仔细检查是否已删除以下所有项:
var resolverContainer = new SimpleContainer();
resolverContainer.Register<IMediaPicker, MediaPicker>()
.Register<IDependencyContainer>(t => resolverContainer);
Resolver.SetResolver(resolverContainer.GetResolver());
var resolverContainer=new SimpleContainer();
resolverContainer.Register()
.Register(t=>resolverContainer);
SetResolver(resolverContainer.GetResolver());
将此代码放在解决方案中每个平台的Xamarin.Forms.Forms.Init
方法之前var mediaPicker=Resolver.Resolve()代码>以获取实例
您是否在.Droid库项目中添加了依赖项服务类来解决IMedipicker?您能告诉我在IOS和windows phone上添加依赖项的想法吗。我目前使用Xlabs Dll作为IMedipicker接口。你能告诉我如何在IOS和windows phone上添加依赖项吗。我目前使用Xlabs Dll作为IMedipicker接口。我在所有平台中都添加了Dll,但不起作用。只有在Droid项目中检查MediaPicket.cs并添加该文件。你能为我提供实现这一点的指导吗。。