zoukankan      html  css  js  c++  java
  • swift UICollectionView使用

    方法1:创建 的时候注册 layout

        /// 时间view
        private lazy var timeCollectionV: UICollectionView = {
            1.直接注册 并设置好 UICollectionViewFlowLayout
            let layout = UICollectionViewFlowLayout()
    
            layout.itemSize = CGSize.init( (JY_DEVICE_WIDTH - 60) / 5, height: (JY_DEVICE_WIDTH - 60) / 5)
            layout.minimumLineSpacing = 10
            layout.minimumInteritemSpacing = 0
            layout.sectionInset = UIEdgeInsetsMake(0, 0, 0, 0)
            
            let collectionV = UICollectionView(frame: CGRect.zero, collectionViewLayout: layout)
            collectionV.register(UINib.init(nibName: "JYChooseShopTimeCollectionCell", bundle: nil), forCellWithReuseIdentifier: "JYChooseShopTimeCollectionCell")
            collectionV.delegate = self
            collectionV.dataSource = self
            collectionV.backgroundColor = UIColor.white
            return collectionV
        }()
    

      2.在代理里面设置UICollectionViewFlowLayout

    extension JYBespeakStylistAndTimeVc: UICollectionViewDataSource, UICollectionViewDelegate,UICollectionViewDelegateFlowLayout{

    //最小行间距
        func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
            return 10;
        }
    
        //每个分区的内边距
        func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
            return UIEdgeInsetsMake(0, 0, 0, 0);
        }
    
        //item 的尺寸
        func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
    
            let sizeItem : CGFloat = CGFloat(JY_DEVICE_WIDTH - 60) / 5
            return CGSize.init( sizeItem, height: sizeItem)
        }

    }



      

    3.其他设置

    // 一个分区几行
        func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
            return 60
        }
        
        //每个cell
        func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
            
            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "JYChooseShopTimeCollectionCell", for: indexPath) as! JYChooseShopTimeCollectionCell
            
    //        cell.configModel(model: self.secmentControlTuple.timeArr![indexPath.row])
            return cell
        }

         func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {

            

            DDLOG(message: "点击 item")

        }



      

  • 相关阅读:
    vue 把后端返回的图片和url链接生成的二维码用canvas 合成一张图片
    Dart和JavaScript对比小结
    webgl学习,知识储备
    nightwatch+selenium做e2e自动化测试采坑小计
    linux centos7 环境变量设置
    ES6学习笔记
    SQLserver数据库还原语句
    AngularJs的那些坑(持续更新...)
    Hosting socket.io WebSocket apps in IIS using iisnode
    mongodb 数据库操作--备份 还原 导出 导入
  • 原文地址:https://www.cnblogs.com/qingzZ/p/9706577.html
Copyright © 2011-2022 走看看