UICollectionViewCell Polsterung

Ich versuche zum setzen von null-Polsterung auf Sammlung anzeigen-Zellen habe ich "Min-Abstand" auf die view-controller:

UICollectionViewCell Polsterung

Doch es hat immer noch Lücken zwischen den Zellen:

UICollectionViewCell Polsterung

Außerdem möchte ich es so, dass die Zellen wrap schön abhängig von der Breite des Rahmens, zum Beispiel jeder Zelle ist 50 Pixel breit, also, wenn es sechs Zellen, und ich stellen Sie die frame-Breite 150px, es zeigt zwei Linien mit drei Zellen.

Doch wenn ich die Bildbreite auf 150 by doing:

- (void)viewDidLoad
{
    [super viewDidLoad];

    CGRect frame = self.collectionView.frame;
    frame.size.width = 150;
    self.collectionView.frame = frame;
}

Sieht es aus wie im obigen screen-shot (zu breit).

Wenn ich es etwas lächerlich klein wie 10, es dann wraps zum Teil:

UICollectionViewCell Polsterung

Den UICollectionViewCell ist 50 x 50:

UICollectionViewCell Polsterung

Ich habe auch versucht, die Einstellung der Größe der Zelle programmgesteuert, und auch entfernt UIEdgeInset:

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
    return UIEdgeInsetsMake(0, 0, 0, 0);
}

Habe ich deaktiviert auto-layout nur incase, dass hatte keine Störungen. Irgendwelche Ratschläge, wie ich kann entfernen Sie die Polsterung und auch haben, Sie zu wickeln, abhängig von der frame-Breite /Höhe?

  • Kann ich nicht reproduzieren dieses Problem. Ich fing Sie ein leeres Projekt mit einem einzigen Blick, eine auflistungsansicht als eine Untersicht, setzen Sie die Einstellungen die gleichen wie diejenigen, die oben gezeigt wird, und aus dem Bild in das storyboard werden 175x175. Diese Leerzeichen aus den Zellen (die das flow-layout hat natürlich). Ich ändern Sie die frame-Größe in viewDidLoad, die mit Ihrem code, und es ändert sich um 150 breit ist und die Zellen füllen die Lücken. Es ist etwas anderes passiert, das nicht in deiner Frage.
  • ah! Sie sind mit einem UICollectionViewController. Mit diesem, Sie können nicht ändern die Größe der Sammlung anzuzeigen. Es füllt immer den Bildschirm (es sei denn, Sie haben, eingebettet in einen container view controller). Mal sehen, ob die Abstände verändert werden können...
  • Vielen Dank für Ihre Zeit, die versuchen zu reproduzieren. Ich habe gerade angefangen neu, obwohl das problem bleibt immer noch. Hochgeladen habe ich ein Beispiel hier, die von nutzen sein können: dl.dropbox.com/u/71160589/example.zip
InformationsquelleAutor StuR | 2013-01-03
Schreibe einen Kommentar