Sto utilizzando UICollectionView per presentare una griglia di immagini in un'app per iPhone (iOS6).Visualizzare le immagini in un UICollectionView - come ottenere una spaziatura verticale fissa tra le immagini?
Sto usando lo scorrimento verticale per l'UICollectionView, e le immagini tutti hanno fissato la larghezza e l'altezza variabile. La larghezza delle immagini è impostata in modo che su un iPhone, visualizza 3 colonne di immagini. Funziona bene e ottengo le immagini presentate in una griglia.
Tuttavia, dato che le mie immagini sono altezza variabile, la spaziatura verticale tra le immagini in una colonna varia e questo non sembra molto buona, come si può vedere nell'immagine seguente (un mockup realizzato in HTML):
Vorrei invece ottenere un flusso più fluido, in cui la spaziatura verticale tra le immagini in una colonna è la stessa. Il seguente mockup mostra come vorrei farlo funzionare:
Tutte le idee su come risolvere questo problema?
Inoltre, come domanda bonus, qualcuno sa come risolvere lo stesso problema se l'app non è stata creata per iOS6 (poiché UICollectionView è disponibile solo in iOS6). O utilizzando un componente di terze parti o risolvendolo con i controlli iOS standard.
Grazie per l'aiuto con questo per altri che cercano a questo, le soluzioni risposta opere alla fine ho finito per usare un componente di terze parti, invece, https: //github.com/ptshih/PSCollectionView. Ciò mi ha permesso di scegliere come target anche iOS5. – Jonas
Ho capito come fornire la spaziatura, ma come posso impostare la dimensione della singola cella sopra codice? – Satyam
@Satyamsvv Utilizzare il metodo delegato per UICollectionViewFlowLayout nella classe ViewController (non il layout sottoclasse) - (CGSize) CollectionView: (UICollectionView *) CollectionView disposizione: (UICollectionViewLayout *) collectionViewLayout sizeForItemAtIndexPath: (NSIndexPath *) indexPath – nsuinteger