如何使用约束在表视图单元格之间创建空间?

时间:2017-08-27 14:28:58

标签: ios swift xcode storyboard

a screenshot of my storyboard

正如您在屏幕截图中看到的那样,顶部图像和屏幕顶部之间没有空格。此外,我的所有图像都不是相同的大小。如何在这些单元格之间创建空间,并使所有图像的大小相同。

2 个答案:

答案 0 :(得分:0)

您可以在UIImageView上创建高度限制。然后创建一个宽高比约束并将其设置为16:9。然后将contentMode的{​​{1}}属性设置为 AspectFill ,并启用剪辑到边界

然后将UIImageView的顶部约束到单元格的顶部,将底部约束到底部,将尾部约束为尾部,每个的常量为15(或其他)。

UIImageViewUILabel之间创建一个中心-Y(垂直居中)和水平间距约束。

要阻止标签剪切,请在其与单元格之间创建一个尾随约束,并将值设置为> = 15 等。然后将行数属性设置为2(如果名称在iPhone 4 / 4s / 5上长时间运行,则将其设置为0可能会导致单元格顶部和底部出现剪裁)。 / p>

答案 1 :(得分:0)

我建议您去集合视图,您可以轻松管理单元格间距 - :

1)在故事板上添加collection view

2)以类似于表格视图的方式添加DataSourceDelegate。(选择集合视图,然后拖放到黄色图标)。

3)在单元格上添加imageView

4)相应地调整cell尺寸。

5)还要在图像下面提供单元间距检查。

enter image description here

6)调整行的最小间距,它将提供您要查找的内容。

控制器类 - :

import UIKit

//controller class with 3 needed protocols
class UnderlineViewController: UIViewController,UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout {

    //viewDidLoad
    override func viewDidLoad() {
        super.viewDidLoad()

        }
    //didReceiveMemoryWarning
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    //numberOfItemsInSection
    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int{
        return 5
    }


    //dequeueReusableCell
    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell{
        let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath)
        return cell
    }

    //numberOfSections

    func numberOfSections(in collectionView: UICollectionView) -> Int{
        return 1
    }

    // sizeForItemAt for each row
    public func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize{
        return CGSize(width: view.frame.width, height: 200)
    }

}

<强> OUTPUT - :

enter image description here

同时取消选中scrollViewInsets

1)单击控制器的黄色图标,然后选择Attribute Inspector

2)寻找调整滚动视图插入并取消选中它。

enter image description here