2013-03-02 16 views
11

Ho cercato un po 'su Google ma non sono riuscito a trovare una semplice classe Image Viewer da utilizzare nella mia app MonoTouch.Photo/Image Viewer per Monotouch

Non è necessario mostrare le miniature delle immagini né un album di foto completo (con più foto).

Ho solo bisogno di un visualizzatore di immagini per mostrare una UIImageView, consentendo le comuni operazioni a schermo intero/zoom.

Ovviamente tale spettatore potrebbe essere implementato usando una sottoclasse UIViewController con UIGestureRecognizer, UIScrollView e UINavigationBar inganno, ma io non voglio reinventare la ruota. Qualcuno sa di un componente open source disponibile?

Sarebbe anche utile per ospitare tale componente nelle nuove Xamarin Component Store

Grazie

+1

Hai utilizzato il collegamento "Suggerisci un componente" nell'archivio componenti? Non riesco a vederlo su https://xamarin.uservoice.com/forums/145075-xamarin-component-ideas – poupou

+0

Molto bello, ho suggerito il componente lì. Grazie –

risposta

11

Here it is.

Caratteristiche:

  • Visualizza entrambi grandi immagini (più grande dello schermo) e piccoli;
  • Un tocco per chiudere la vista, due tocchi per ingrandire/ridurre. È anche disponibile la funzione di ingrandimento da zoom;
  • Scorrere tra i contenuti disponibili. È impossibile scorrere l'immagine all'esterno dell'area visibile. Grazie alla proprietà ContentSize di .

Suggerimenti per il futuro:

  • Ho ridotto il codice, eliminando UINavigationBar utilizzo.
  • Inoltre, è utile aggiungere l'animazione di base UIView (dissolvenza in apertura/chiusura) quando l'utente apre/chiude la visualizzazione dell'immagine a schermo intero.

Alcune informazioni relative:

Eventuali segnalazioni di bug e suggerimenti sono ben accetti!

+0

Sì, sarebbe davvero bello aggiungere una transizione di dissolvenza per le operazioni di apertura/chiusura. Inoltre ho notato che c'è un ritardo nel rilevare il 'tocco singolo' sull'immagine (probabile a causa del timer che stai utilizzando). Forse sarebbe meglio usare un UIGestureRecognizer a doppio tocco. –

+2

Fine: aggiunte dissolvenze in entrata/uscita; Migliore gestione dei tocchi singoli e doppi (utilizzo del metodo iOS anziché timer); Lo sfondo rosso per l'immagine è stato rimosso. È stato utilizzato per il debug. –

+0

Bello.Ci sono alcuni miglioramenti che potrebbero ancora essere fatti, come lo zoom alla posizione di tocco (invece di impostare solo la scala dello zoom). –