Ich benutze eine UICollectionview
mit einem kreisförmigen Layout. Ich versuche, die contentOffset
pro Artikel zu berechnen, aber mit dem kreisförmigen Layout scheint die volle contentsize
nicht den Inhalt übereinstimmen.iOS: `UICollectionview`, wie man` containoffset` einer Zelle durch `indexPath` bekommt
- Die Gesamtcontent der Kollektion = 780
- Der Inhalt des letzten Elements offset = 397 (?)
- Der Inhalt pro Artikel offset = 33 (?)
Gibt es eine Möglichkeit Ich kann den Offset für einen Artikel durch indexPath
oder mindestens den richtigen Wert (397) für den letzten Artikel im collectionview
bekommen? Ich habe diese Werte durch Testen und Drucken der contentoffset
, aber ich möchte diese Zahlen (33 und 397) nach Code ohne Scrollen berechnen.
Also gibt es eine Möglichkeit, eine Zelle contentoffset
(?) Innerhalb der collectionview
durch indexPath
zu berechnen? Danke!
Vielleicht können Sie Zelle Rahmen erhalten und durch das Wissen, dass berechnen es ist Inhalt versetzt? UICollectionViewLayoutAttributes * Attribute = [self.collectionView layoutAttributesForItemAtIndexPath: indexPath]; CGRect cellRect = attributes.frame; –
ok, ich habe die x, y, Breite und Höhe meiner Zelle..aber ich möchte den Inhalt Offset des Elements in meiner uicollectionview. Welchen Code würde ich verwenden? –
ContentOffset teilt Ihnen mit, wie viel scrollView in irgendeine Richtung gescrollt wurde, wenn die contentSize von scrollView größer ist als frame.size, andernfalls ist contentOffset 0. Wenn Sie das in die Position von UICollectionViewCell übersetzen möchten, wäre das etwa: CGFloat offsetY = fabs (self.collectionView.contentOffset.y - cellLayoutAttributes.frame.origin.y); aber ich weiß nicht, warum du das brauchst. Um ehrlich zu sein, bin ich mir nicht sicher, ob das richtige Logik ist, weil UICollectionViewCell contentOffset nicht haben kann, es hat frame und indexPath. –