Swift 3 collection Посмотрите, как установить интервал. - PullRequest
0 голосов
/ 27 апреля 2018

enter image description here

  1. Как вы центрируете 3 клетки? Это слева.

  2. Как установить одинаковое расстояние со всех сторон каждой ячейки?

  3. Вторая ячейка, которая говорит, что никаких результатов не найдено. Как бы вы сделали это по центру и занять весь экран? Прямо сейчас его обрезали в верхнем левом углу.

Ответы [ 2 ]

0 голосов
/ 27 апреля 2018

Вы также можете использовать так:

    let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
    let width = UIScreen.main.bounds.size.width
    layout.itemSize = CGSize(width: width/3.05, height: width/3.05)
    layout.sectionInset = UIEdgeInsets(top: 2, left: 1, bottom: 2, right: 1)
    layout.minimumInteritemSpacing = 0
    layout.minimumLineSpacing = 2
    collectionView!.collectionViewLayout = layout
    collectionView.reloadData()

Выход:

enter image description here

Надеюсь, это поможет.

0 голосов
/ 27 апреля 2018

вам нужно использовать collectionView flowLayout

let width = UIScreen.main.bounds.size.width

//MARK:- Collection View Flow Layouts
extension HomeVC : UICollectionViewDelegateFlowLayout
{    
    //MARK: Setting size of cell
    public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
    {
        return CGSize(width: width/3-16, height: width/3-16)
    }

    //MARK: Setting space Around Corners of Cells
    public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets
    {
        return  UIEdgeInsetsMake(8, 8, 8, 8)
    }

    //MARK: Setting space between two sections
    public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat
    {
        return 0
    }

    //MARK: Setting Space between two Cels
    public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat
    {
        return 8
    }
}

StoryBoard Design

enter image description here

Выход:

enter image description here

...