2012-10-16 10 views
6

Con il nuovo iOS 6, Apple ha aggiunto il nuovo menu di condivisione UIActivityViewController (immagine A) che ha piccoli pulsanti icona da condividere invece del solo vecchio pulsante di testo UIActionSheet.Creazione di una visualizzazione di condivisione personalizzata simile alla nuova condivisione dei pulsanti di iOS 6

Desidero visualizzare un UIActivityViewController ma con pulsanti personalizzati. So che hanno un elenco di applicazioni predefinite che possono essere visualizzate (Mail, Messaggi, Facebook, Twitter, ecc.) Ma voglio personalizzare ciò che accade quando clicchi su quei pulsanti. Quando si fa clic sull'icona di condivisione della posta, si apre l'app di posta con un nuovo messaggio, ad esempio mi piacerebbe che quando si fa clic sull'app di posta, si apre l'app di Twitter (non proprio, ma solo qualcosa di diverso da quello predefinito) . In questo momento non riesco a trovare un modo per aggiungere i miei metodi dietro i pulsanti.

Con l'ultimo ShareKit hanno aggiunto la condivisione di Instagram e quando si seleziona di condividere con esso viene visualizzata una nuova vista che appare esattamente come lo schermo di UIActivityViewController (immagine B). Sembravano aver capito come aggiungere pulsanti personalizzati che facciano cose personalizzate. Ho cercato attraverso il codice ShareKit ma non riesco a trovare dove o come funziona.

Forse quello che sto chiedendo non è ancora possibile, ma qualsiasi aiuto è apprezzato!

immagine A image A

immagine B image B

risposta

9

Abbia un'occhiata a questo link. E 'una buona introduzione condivisione su iOS 6.

La seguente citazione è da questo post del blog:

È anche possibile aggiungere il supporto per le proprie opzioni di condivisione personalizzate ed ancora lasciare UIActivityViewController gestire l'interazione con il utente. Per fare ciò, sottoclassi la classe astratta UIActivity e sovrascrivi i metodi richiesti (consulta la documentazione per i dettagli).

+0

Questo è quello che stavo cercando. Grazie per la risposta :) – rob1302

2

Sharekit è un'astrazione che non è personalizzabile nel modo in cui si desidera utilizzarla. Apple controlla l'interfaccia per questi servizi.

Sfortunatamente, se si desidera personalizzare la condivisione e come funziona, sarà necessario implementare la propria versione di sharekit, con punti di accesso a UI e API a questi servizi.

Sharekit esiste in modo che non devi fare questo. Poiché le esigenze cambiano nel tempo, mi aspetto che Apple aggiungerà e rimuoverà i servizi a proprio piacimento.

L'utilizzo dell'API "così com'è" è l'opzione più sensata.

0

L'immagine B utilizza infatti il ​​codice di interazione della documentazione di Instagram piuttosto che un UIActivityViewController con una UIActivity personalizzata. Potete leggere di più su Instagrams "ganci" qui ... custom iphone hooks

Un UIActivity è stato creato da un 3rd party per Instagram che potete trovare here ... Questo apre lo stesso menu come ShareKit quando selezionato in quanto è il unico modo per passare un'immagine direttamente su Instagram.

Problemi correlati