Swift --滚动菜单--父子控制器

首先我们需要下载一个第三方
PageTitleView
然后输入创建"VCTwo"视图继承控制器

然后需要在父子控制器创建你需要的子控制器用于书写界面

private lazy var pageTitleView: MFPageTitleView = {
let config = MFPageTitleViewConfig()
config.titleColor = colorWithRGB(r: 43, g: 43, b: 43)
config.titleSelectedColor = colorWithRGB(r: 211, g: 0, b: 0)
config.titleFont = UIFont.systemFont(ofSize: 14, weight: .regular)
config.indicatorColor = colorWithRGB(r: 211, g: 0, b: 0)
let pageTitleView = MFPageTitleView(frame: CGRect(x: 0, y: navHeight, width: SCREEN_WIDTH, height: 41), titles: [“关注”, “推荐”, “热点”, “世界杯”, “小视频”], config: config)
pageTitleView.pageTitleViewDelegate = self
return pageTitleView
}()

private lazy var pageContentView: MFPageContentView = {
    var childControllers = [UIViewController]()
    var arr:[UIViewController]=[GuanZ(),TuiJ(),ReD(),ShiJB(),XiaoSP()]
    for i in 0..<5 {
        childControllers.append(arr[i])
    }
    
    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
    return pageContentView
}()

override func viewDidLoad() {
    super.viewDidLoad()
    view.backgroundColor = UIColor.white
    view.addSubview(pageTitleView)
    view.addSubview(pageContentView)
    //导航条标题
    let vc = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 40))
    let iam = UIImageView(frame: CGRect(x: 0, y: 0, width: 100, height: 40))
    iam.image=UIImage(named: "标题")
    vc .addSubview(iam)
    self.navigationItem.titleView=vc
    
}

}

extension VCTwo: 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)
}
}

猜你喜欢

转载自blog.csdn.net/qq_22049111/article/details/84141679