gpt4 book ai didi

c# - 在 Xamarin Forms 中获取或选择多个图像

转载 作者:太空狗 更新时间:2023-10-29 23:49:21 25 4
gpt4 key购买 nike

我正在使用“Plugin.Media.CrossPlatform”nuget 访问相机并在 Xamarin Forms 中拍照。但目前,它一次只拍摄一张照片,并且只上传最后一张拍摄的照片。我想添加多个捕获并允许用户从最近捕获的图像中选择特定图片。这个插件在 Android 和 IOS 两个平台上怎么可能?

此外,我还添加了选择模式,如果用户想从图库中选择图片。但是有同样的问题。我想一次选择多张图片并在两个平台上上传。这个在 Xamarin Forms 中的实现如何?此任务是否有任何示例或博客?

我正在使用 this包。

最佳答案

MediaPlugin 不允许多次捕获或拾取多张图片。

您必须实现平台方法并使用依赖服务访问它们,诸如此类。 DependencyService.Get<IDoMultipleStuff>().TakePictures();

对于 Android,您可以使用 INTENT_ACTION_STILL_IMAGE_CAMERA 拍摄多张照片:

Intent intent = new Intent(
MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
this.startActivity(intent);

而对于 iOS,您可以使用 PhotoPicker这可以让您在返回您的应用程序之前拍摄多张照片。

在 Android 中,您可以通过在 Intent 中放入额外的 ExtraAllowMultiple 来选择多个图像。

var imageIntent = new Intent(Intent.ActionPick);
imageIntent.SetType ("image/*");
imageIntent.PutExtra (Intent.ExtraAllowMultiple, true);
imageIntent.SetAction (Intent.ActionGetContent);
((Activity)Forms.Context).StartActivityForResult(Intent.CreateChooser (imageIntent, "Select photo"), 0);

对于 iOS,您可以使用 ELCImagePicker以这种方式。

var picker = ELCImagePickerViewController.Create();
picker.MaximumImagesCount = 15;

picker.Completion.ContinueWith (t => {
if (t.IsCanceled || t.Exception != null) {
// no pictures for you!
} else {
var items = t.Result as List<AssetResult>;
}
});

PresentViewController (picker, true, null);

关于c# - 在 Xamarin Forms 中获取或选择多个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48740223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com