Как разрешить пользователю выбирать видео в MonoTouch?

#c# #ios #xamarin.ios #uiimagepickercontroller

#c# #iOS #xamarin.ios #uiimagepickercontroller

Вопрос:

В MonoTouch я вижу массу примеров того, как выбрать фотографию или сделать снимок с помощью UIImagePickerController , однако я ничего не вижу на видео.

Как я могу предложить пользователю выбрать видеофайл только из своей библиотеки (без фотографий)?

Ответ №1:

Вы должны назначить строку [] с типами носителей, которые вы хотите, чтобы контроллер выбора изображений считывал. Доступные типы носителей следующие

  1. public.image
  2. public.movie

Итак, чтобы средство выбора изображений читало только видеофайлы:

 UIImagePickerController myImgPick = new UIImagePickerController();
myImgPick.MediaTypes = new string[] { "public.movie" };
  

Вы также можете проверить доступные типы носителей, в зависимости от источника мультимедиа (камера, библиотека фотографий и т.д.):

 string[] mediaTypesForCamera = UIImagePickerController.AvailableMediaTypes(UIImagePickerControllerSourceType.Camera);
  

Комментарии:

1. Это действительно выглядит правильно, хотя myImgPick. mediaTypes = new string[] { «public.video»}; вызывает исключение NSInvalidArgumentException: «Нет доступных типов для исходного кода 0» — есть идеи, почему это?

2. О, я всегда ошибаюсь: правильная строка — «public.movie», а не «public.video». Отредактировал мой ответ. Было бы хорошей практикой всегда проверять возвращаемое значение AvailableMediaTypes.