美文网首页
Swift + StoryBoard + CollectionV

Swift + StoryBoard + CollectionV

作者: wenju | 来源:发表于2021-07-15 14:35 被阅读0次

    具体的代码如下:

    import UIKit
    
    let SCREEN_WIDTH = UIScreen.main.bounds.width
    class ViewController: UIViewController {
        @IBOutlet weak var PictureCollectionView: UICollectionView!
        
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view.
            
            
            PictureCollectionView.delegate = self
            PictureCollectionView.dataSource = self
        }
    }
    
    //相当于Android里面的适配器
    extension ViewController: UICollectionViewDelegate, UICollectionViewDataSource {
        func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
            return 22
        }
        
        func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "PictureCollectionCell", for: indexPath) as! PictureCollectionCell
            cell.testText.text = String(indexPath.row)
            
            
            return cell
        }
        
        func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
            //条目点击事件
            NSLog("点击了item" + String(indexPath.row))
        }
    }
    
    //相当于Android里面的ViewHolder,获取列表Item控件,需要在StoryBorad布局CollectionViewCell中设置绑定
    class PictureCollectionCell: UICollectionViewCell {
        @IBOutlet weak var testText: UILabel!
    }
    
    //设置布局配置,需要在CollectionView中设置自定义布局宽高,间距,滑动方式
    class CustomCollecionViewFlowLayout: UICollectionViewFlowLayout {
        required init?(coder: NSCoder) {
            super.init(coder: coder)
            scrollDirection = .horizontal
            sectionInset = UIEdgeInsets(top: 16, left: 20, bottom: 16, right: 20)
            itemSize = CGSize(width: SCREEN_WIDTH/2 - 25, height: SCREEN_WIDTH/2 - 25)
        }
    }
    

    StoryBoard使用注意点:
    1.设置自定义布局


    设置自定义布局.png

    2.关联控件


    关联控件1.png
    关联控件2.png

    相关文章

      网友评论

          本文标题:Swift + StoryBoard + CollectionV

          本文链接:https://www.haomeiwen.com/subject/vuoppltx.html