0

我想根據這個主題來構建一個UICollectionView作爲標籤流佈局:http://codentrick.com/create-a-tag-flow-layout-with-uicollectionview/如何對齊UICollectionViewCell?

它的工作,直到按鈕的動作,但有一個問題。正如您在下面的圖片中看到的,自定義UICollectionViewCell不像主題那樣正確對齊。我做的一切都是相同的,但FlowLayout.swift

enter image description here

我想使這些細胞之間的平等差距。但他們正在這樣調整。

您可以在下面找到FlowLayout.swift

有人能告訴我如何解決它?

import Foundation 
import UIKit 

class FlowLayout: UICollectionViewFlowLayout { 

    override func layoutAttributesForElementsInRect(rect: CGRect) -> [UICollectionViewLayoutAttributes]? { 

     let attributesForElementsInRect = super.layoutAttributesForElementsInRect(rect) 
     var newAttributesForElementsInRect = [UICollectionViewLayoutAttributes]() 

     var leftMargin : CGFloat = 0.0 

     for attributes in attributesForElementsInRect! { 
      let refAttributes = attributes 
      // assign value if next row 
      if (refAttributes.frame.origin.x == self.sectionInset.left) { 
       leftMargin = self.sectionInset.left 
      } else { 
       // set x position of attributes to current margin 
       var newLeftAlignedFrame = refAttributes.frame 
       newLeftAlignedFrame.origin.x = leftMargin 
       refAttributes.frame = newLeftAlignedFrame 
      } 
      // calculate new value for current Fmargin 
      leftMargin += refAttributes.frame.size.width + 8 
      newAttributesForElementsInRect.append(refAttributes) 
     } 

     return newAttributesForElementsInRect 
    } 


} 

回答

1

已解決。

我將UICollectionView的佈局流程更改爲自定義,並將FlowLayout.swift設置爲UICollectionView的類。

+0

我有同樣的問題,謝謝! – Geek20