2013-03-02 2 views
11

Я немного искал Google, но не смог найти простой класс Image Viewer для использования в моем приложении MonoTouch.Photo/Image Viewer для Monotouch

Мне не нужно показывать эскизы изображений не полный фотоальбом (с несколькими фотографиями).

Мне просто нужен просмотрщик изображений, чтобы показать UIImageView, что позволяет использовать общие полноэкранные/масштабируемые операции.

Очевидно, что такое зритель может быть реализовано с использованием UIViewController подкласса с UIGestureRecognizer, UIScrollView и UINavigationBar обманом, но я не хочу, чтобы изобретать колесо. Кто-нибудь знает о доступных компонентах с открытым исходным кодом?

Было бы также полезно провести такой компонент в новых Xamarin Component Store

Благодарности

+1

Вы использовали ссылку «Предложить компонент» в хранилище компонентов? Я не вижу его на https://xamarin.uservoice.com/forums/145075-xamarin-component-ideas – poupou

+0

Очень приятно, я предложил компонент там. Спасибо –

ответ

11

Here it is.

Особенности:

  • Показать как большие изображения (больше, чем на экране) и малых;
  • Один крана для закрытия, два крана для увеличения/уменьшения. Также доступен Pinch для увеличения;
  • Прокрутка через доступный контент. Невозможно прокрутить изображение за пределами видимой области. Благодаря UIScrollViewContentSize Недвижимость.

Предложения на будущее:

  • я уменьшил код путем удаления UINavigationBar использования.
  • Также неплохо добавить основную анимацию UIView (затухание в/из), когда пользователь открывает/закрывает полноэкранное изображение.

Некоторые относительная информация:

  • решение сильно вдохновлен this article.
  • В качестве отправной точки для исправления рекомендую Xamarin's article.

Любые сообщения об ошибках и предложения приветствуются!

+0

Да, было бы неплохо добавить переход затухания для операций открытия/закрытия. Также я заметил, что есть задержка для обнаружения «одного нажатия» на изображении (вероятно, из-за используемого вами таймера). Возможно, было бы лучше использовать двойной атрибут UIGestureRecognizer. –

+2

Готово: добавлены переходы Fade in/fade out; Лучше обрабатывать одиночные и двойные ответвители (использование метода iOS вместо таймера); Красный фон для изображения был удален. Он использовался для отладки. –

+0

Ницца.Есть еще несколько улучшений, которые можно было бы сделать, например масштабирование до положения касания (вместо настройки масштаба масштабирования). –

Смежные вопросы