cellForItemAtIndexPath
에 버그가 없습니다. 그 세포의 label
을 숨겨 둡니다. 그래서 그것은 셀을 제거하지 않는 레이블을 숨 깁니다. 2:00
과 같지 않은 값만 표시하려면 추가 배열 하나를 만들어 CollectionViewDelegate
메서드에 전달해야합니다. 이와 같이 하나의 전역 배열과 함수를 만듭니다.
var array: [Int] = [Int]()
fun populateData() {
for i in oldArray {
if i != 2 {
self.array.append(i)
}
}
collectionView.reloadData()
}
지금이 당신을 도울 것이
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return self.array.count
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let hour = array[indexPath.row]
cell.hourBtn.setTitle("\(hour):00", forState: .Normal)
//Now there is no need to write code for hiding button
}
희망처럼 CollectionViewDelegate
방법이 array
객체를 사용합니다.
그냥 시도해보기 –
내 코드 블록과 출력을 보여주는 두 개의 그림이 있습니다. 나는 "01:00", "02:00", ".."과 같은 24 시간을 보여주기 위해 버튼을 내부에 가지고있는 수평 컬렉션 뷰를 만들고 싶습니다. 그러나 다른 버튼과 다른 버튼을 설정하고 싶습니다. 그것은 hide button 또는 다른 titleColor가 될 것입니다. 이 예제에서는 "02:00"제목이 –
인 버튼을 숨기려고합니다. 그러나 "7:00", "12:00", "17:00"제목이있는 다른 버튼도 변경됩니다. 그리고 가로 컬렉션 뷰를 왼쪽이나 오른쪽으로 움직일 때마다 다른 버튼을 설정할 수 있습니다. 이상 하네, 그렇지 않니? –