Je veux afficher une image au centre. Dans UICollectionView, le premier élément affiche l'image au centre lorsque je passe au deuxième élément, celui-ci n'est pas centré.
let itemsPerRow:CGFloat = 1
var sectionInsets = UIEdgeInsets(top: 20.0, left: 20.0, bottom: 20.0, right: 20.0)
var productImage = [String]()
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return productImage.count
}
func collectionView(_ collectionView: UICollectionView,
cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ProductInfoDetailCell", for: indexPath) as! ProductInfoDetailCell
cell.productLargeImageView.image = UIImage(named: productImage[indexPath.row])
//cell.productLabel.text = productTitle[indexPath.row]
return cell
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let paddingSpace = (sectionInsets.left ) * (itemsPerRow + 1)
let availableWidth = collectionView.frame.size.width - paddingSpace
let widthPerItem = availableWidth / itemsPerRow
return CGSize(width: widthPerItem , height: 400)
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
return sectionInsets
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
return sectionInsets.left
}
Première image, l'article est centré-
Deuxième image, l'élément n'est pas centré
J'utilise également le défilement horizontal et la pagination dans UICollectionView.