Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 自适应UICollectionView单元宽度_Ios_Objective C - Fatal编程技术网

Ios 自适应UICollectionView单元宽度

Ios 自适应UICollectionView单元宽度,ios,objective-c,Ios,Objective C,我不熟悉集合视图和自动布局,我在使单元大小适应模拟器中的各种设备时遇到了一个问题。我正在使用流布局,并在尺寸检查器中设置尺寸。我提供的图像显示了我在所有设备上需要电池的外观(左侧iPhone5的画布)。iPhone4显示良好,但6s不正确。 有人能告诉我这是如何做到的,因为我找不到确切的信息,我正在寻找。 谢谢 另外,我不知道为什么iPhone5没有像4和6那样在预览部分显示单元格。。?有什么线索吗 使用UICollectionView,您需要使用委托方法计算单元格的大小及其周围的空间(插入和项

我不熟悉集合视图和自动布局,我在使单元大小适应模拟器中的各种设备时遇到了一个问题。我正在使用流布局,并在尺寸检查器中设置尺寸。我提供的图像显示了我在所有设备上需要电池的外观(左侧iPhone5的画布)。iPhone4显示良好,但6s不正确。 有人能告诉我这是如何做到的,因为我找不到确切的信息,我正在寻找。 谢谢

另外,我不知道为什么iPhone5没有像4和6那样在预览部分显示单元格。。?有什么线索吗


使用
UICollectionView
,您需要使用委托方法计算单元格的大小及其周围的空间(插入和项间距)

像这样的东西应该适合你:

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAtIndex section: Int) -> UIEdgeInsets {

    return UIEdgeInsets(top: 8, left: 4, bottom: 0, right: 4)
}

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat {
    return CGFloat(8)
}

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {

    let cellWidth = (view.bounds.size.width - 16) / 2
    let cellHeight = cellWidth * 0.8 // multiply by some factor to make cell rectangular not square

    return CGSize(width: cellWidth, height: cellHeight)
}
UICollectionViewCell
中,您可以使用自动布局来定位单元格中的内容,如标签、图像等


使用
UICollectionView
,您需要使用委托方法计算单元格的大小及其周围的空间(插入和项间距)

像这样的东西应该适合你:

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAtIndex section: Int) -> UIEdgeInsets {

    return UIEdgeInsets(top: 8, left: 4, bottom: 0, right: 4)
}

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat {
    return CGFloat(8)
}

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {

    let cellWidth = (view.bounds.size.width - 16) / 2
    let cellHeight = cellWidth * 0.8 // multiply by some factor to make cell rectangular not square

    return CGSize(width: cellWidth, height: cellHeight)
}
UICollectionViewCell
中,您可以使用自动布局来定位单元格中的内容,如标签、图像等


谢谢您,先生,您浏览了整个网络,这实际上是我在这个话题上看到的最“切中要害”和最准确的答案!非常感谢,我很想去,但我不知道如何,因为我是这个论坛的新手??完成了!谢谢你的帮助先生谢谢你先生浏览了整个网络,这实际上是我在这个话题上看到的最“切中要害”和最准确的答案!非常感谢,我很想去,但我不知道如何,因为我是这个论坛的新手??完成了!谢谢你的帮助,先生