美文网首页
iOS 总结:分段组件 NNSegmentView 终章篇

iOS 总结:分段组件 NNSegmentView 终章篇

作者: SoaringHeart | 来源:发表于2019-09-29 08:46 被阅读0次
NNSegmentView效果图.gif
//
//  ScrollViewController.swift
//  SwiftTemplet
//
//  Created by Bin Shang on 2019/8/30.
//  Copyright © 2019 BN. All rights reserved.
//

import UIKit
import SwiftExpand

class ScrollViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        // Do any additional setup after loading the view.
        
        NNSegmentView.appearance().selectedColor = UIColor.red
        
        view.addSubview(scrollView)
        view.addSubview(scrollViewOne)

        //        self.scrollView.collectionView.reloadData();
        view.getViewLayer()
    }
    
    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        scrollView.frame = CGRectMake(0, 20, kScreenWidth, 40);
        scrollViewOne.frame = CGRectMake(20, 80, 100, kScreenWidth);

    }
    
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        
        self.title = (self.obj as! String);
    }
    
    // MARK: -lazy
    lazy var scrollView: NNSegmentView = {
        let view = NNSegmentView(frame: .zero)
        view.list = ["1", "2", "3", "4", "5", "6",];
        view.indicatorType = 2;
        view.showItemNum = 4.5;

        view.collectionView.register(cellType: UICTViewCellOne.self)
//        view.collectionView.register(UICTViewCellOne.classForCoder(), forCellWithReuseIdentifier: "UICTViewCellOne")
        view.blockCellForItem({ (collectionView, indexPath) -> UICollectionViewCell? in
//            let cell: UICTViewCellOne = UICTViewCellOne.dequeueCTVCell(collectionView, indexPath: indexPath) as! UICTViewCellOne
            let cell: UICTViewCellOne = collectionView.dequeueReusableCell(for: UICTViewCellOne.self, indexPath: indexPath)
            cell.label.text = "标题\(indexPath.row)"
            
            cell.label.textColor = view.selectIndexPath == indexPath ? view.selectedColor : view.normalColor;
//            cell.contentView.backgroundColor = UIColor.random;
            cell.imgView.isHidden = true;
            return cell;
        });
        
        view.blockDidSelectItem({ (collectionView, indexPath) in
            DDLog(indexPath);
            collectionView.reloadData();

        })
        
        return view;
    }()
    
    
    // MARK: -lazy
    lazy var scrollViewOne: NNSegmentView = {
        let view = NNSegmentView(frame: .zero)
        view.list = ["1", "2", "3", "4", "5", "6",];
        view.layout.scrollDirection = .vertical
        view.indicatorType = 3;
        view.collectionView.register(UICTViewCellOne.classForCoder(), forCellWithReuseIdentifier: "UICTViewCellOne")
        
        view.blockCellForItem({ (collectionView, indexPath) -> UICollectionViewCell? in
            let cell: UICTViewCellOne = UICTViewCellOne.dequeueCTVCell(collectionView, indexPath: indexPath) as! UICTViewCellOne
            cell.label.text = "标题\(indexPath.row)"
            
            cell.label.textColor = view.selectIndexPath == indexPath ? view.selectedColor : view.normalColor;
//            cell.contentView.backgroundColor = UIColor.random;
            cell.imgView.isHidden = true;
            return cell;
        });
        
        view.blockDidSelectItem({ (collectionView: UICollectionView, indexPath) in
            DDLog(indexPath);
            collectionView.reloadData();

        })
        
        return view;
    }()
}

github源码

相关文章

网友评论

      本文标题:iOS 总结:分段组件 NNSegmentView 终章篇

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