Swift分段控制器

1.导入第三方PageTitleView
2.App中写入导航

        
        let VC = ViewController()
        
        let Nav = UINavigationController(rootViewController: VC)
        
        self.window?.rootViewController = Nav

3.view中写内容
var childControllers = 后面写上自己创建的几个ViewController视图

private lazy var pageTitleView: MFPageTitleView = {
        let config = MFPageTitleViewConfig()
        config.titleColor = colorWithRGB(r: 43, g: 43, b: 43)
        config.titleSelectedColor = colorWithRGB(r: 133, g: 84, b: 233)
        config.titleFont = UIFont.systemFont(ofSize: 17, weight: .regular)
        config.indicatorColor = colorWithRGB(r: 133, g: 84, b: 233)
        let pageTitleView = MFPageTitleView(frame: CGRect(x: 0, y: navHeight, width: SCREEN_WIDTH, height: 41), titles: ["推荐", "快讯", "深度", "时点对话", "行请分析"], config: config)
        pageTitleView.pageTitleViewDelegate = self as MFPageTitleViewDelegate
        return pageTitleView
    }()
    
    private lazy var pageContentView: MFPageContentView = {
        var childControllers = [OneViewController(),TwoViewController(),ThreeViewController(),FourViewController(),FiveViewController()]
        for var k in 0..<5 {
            let vc = childControllers[k]
            let red: CGFloat = CGFloat(arc4random() % 256)
            let green: CGFloat = CGFloat(arc4random() % 256)
            let blue: CGFloat = CGFloat(arc4random() % 256)
            vc.view.backgroundColor = UIColor(red: red / 255.0, green: green / 255.0, blue: blue / 255.0, alpha: 1.0)
            //childControllers.append(vc)
        }
        
        let pageContentViewY = pageTitleView.frame.maxY
        let pageContentView = MFPageContentView(frame: CGRect(x: 0, y: pageContentViewY, width: SCREEN_WIDTH, height: SCREEN_HEIGHT-pageContentViewY), parentVC: self, childVCs: childControllers)
        pageContentView.pageContentViewDelegate = self as MFPageContentViewDelegate
        return pageContentView
    }()
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        
        self.title = "布洛克科技"
        view.backgroundColor = UIColor.white
        view.addSubview(pageTitleView)
        view.addSubview(pageContentView)
        
        
    }


}
extension ViewController: MFPageTitleViewDelegate, MFPageContentViewDelegate {
    func selectedIndexInPageTitleView(pageTitleView: MFPageTitleView, selectedIndex: Int) {
        self.pageContentView.setPageContentViewCurrentIndex(currentIndex: selectedIndex)
    }
    func pageContentViewScroll(progress: CGFloat, originalIndex: Int, targetIndex: Int) {
        self.pageTitleView.setPageTitleView(progress: progress, originalIndex: originalIndex, targetIndex: targetIndex)
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值