Swift UICollectionView 布局不受控制的问题

8 篇文章 0 订阅
3 篇文章 0 订阅

 

最近上手使用Swift来实现一些简单的功能,顺便当做练习了!

在使用UICollectionView实现列表功能时,发现了诡异的现象:

当我像往常那样同OC一样实现UICollectionView相关的布局方法后,布局乱做一团,代码如下:

extension HomeViewController: UICollectionViewDelegateFlowLayout{
    
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
        UIEdgeInsets.zero
    }
    
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        
        let section = indexPath.section
        
        if section == 0 {
            return CGSize(width: view.bounds.width, height: 100)
        }else if section == 1{
            return CGSize(width: (view.bounds.width - 1) / 2.0, height: 55)
        }else if section == 2{
            
            let w = view.bounds.width / 4.0
            let h: CGFloat = 80.0
            
            return CGSize(width: w, height: h)
        }else{
            
            return CGSize(width: view.bounds.width, height: 100)
        }
    }
    
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
//        section == 2 ? CGFloat.leastNonzeroMagnitude : CGFloat.leastNormalMagnitude
        CGFloat.leastNormalMagnitude
    }
}

效果图:

效果图

顿时蒙圈了,怎么会这样的,同样的代码,Swift这是要逆天啊😂,冷静下来,进入分析阶段,心想:既然代码差不多,是不是XIB上有什么差异,经仔细对比后发现了端倪,如下图

OC默认设置   Swift默认

真晕,果断改回来None,效果图顿时在掌控之中:

正常效果图

 

Binggo! 收工

看来Swift这条路不好走啊,加油ヾ(◍°∇°◍)ノ゙

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值