107 lines
3.5 KiB
Swift
107 lines
3.5 KiB
Swift
//
|
|
// SPOrderRecordsPageViewController.swift
|
|
// MoviaBox
|
|
//
|
|
// Created by 佳尔 on 2025/4/29.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
class SPOrderRecordsPageViewController: SPViewController {
|
|
|
|
private lazy var titles: [String] = ["movia_Coin_Record".localized, "movia_VIP_Record".localized]
|
|
private lazy var viewControllers: [UIViewController] = {
|
|
let vc1 = SPCoinOrderRecordViewController()
|
|
let vc2 = SPVIPOrderRecordViewController()
|
|
return [vc1, vc2]
|
|
}()
|
|
|
|
//MARK: UI属性
|
|
private lazy var pageView: WMPageController = {
|
|
let pageView = WMPageController()
|
|
pageView.delegate = self
|
|
pageView.dataSource = self
|
|
pageView.titleFontName = UIFont.mediumFontName()
|
|
pageView.titleSizeNormal = 16
|
|
pageView.titleSizeSelected = 16
|
|
pageView.titleColorNormal = .colorFFFFFF(alpha: 0.45)
|
|
pageView.titleColorSelected = .colorFF3232()
|
|
pageView.progressColor = .colorFFFFFF()
|
|
pageView.menuViewStyle = .flood
|
|
pageView.menuViewLayoutMode = .center
|
|
pageView.progressHeight = 36
|
|
pageView.menuItemWidth = (kSPScreenWidth - 44) / 2
|
|
return pageView
|
|
}()
|
|
|
|
private lazy var menuBgView: UIView = {
|
|
let view = UIView()
|
|
view.backgroundColor = .color362020()
|
|
view.layer.cornerRadius = 16
|
|
view.layer.masksToBounds = true
|
|
return view
|
|
}()
|
|
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
self.title = "movia_order_records".localized
|
|
self.edgesForExtendedLayout = .top
|
|
|
|
_setupUI()
|
|
}
|
|
|
|
override func viewWillAppear(_ animated: Bool) {
|
|
super.viewWillAppear(animated)
|
|
self.navigationController?.setNavigationBarHidden(false, animated: true)
|
|
setNavigationNormalStyle(backgroundColor: .clear, isTranslucent: true)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
extension SPOrderRecordsPageViewController {
|
|
|
|
private func _setupUI() {
|
|
addChild(self.pageView)
|
|
|
|
view.addSubview(menuBgView)
|
|
view.addSubview(self.pageView.view)
|
|
|
|
self.pageView.view.snp.makeConstraints { make in
|
|
make.left.right.bottom.equalToSuperview()
|
|
make.top.equalToSuperview().offset(kSPNavBarHeight)
|
|
}
|
|
|
|
menuBgView.snp.makeConstraints { make in
|
|
make.left.equalToSuperview().offset(16)
|
|
make.centerX.equalToSuperview()
|
|
make.top.equalToSuperview().offset(kSPNavBarHeight)
|
|
make.height.equalTo(48)
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
//MARK: -------------- WMPageControllerDelegate & WMPageControllerDataSource --------------
|
|
extension SPOrderRecordsPageViewController: WMPageControllerDelegate, WMPageControllerDataSource {
|
|
func pageController(_ pageController: WMPageController, preferredFrameForContentView contentView: WMScrollView) -> CGRect {
|
|
return CGRect(x: 0, y: 48, width: kSPScreenWidth, height: kSPScreenHeight - kSPNavBarHeight - 48)
|
|
}
|
|
|
|
func pageController(_ pageController: WMPageController, preferredFrameFor menuView: WMMenuView) -> CGRect {
|
|
return CGRect(x: 0, y: 0, width: kSPScreenWidth, height: 48)
|
|
}
|
|
|
|
func numbersOfChildControllers(in pageController: WMPageController) -> Int {
|
|
return self.titles.count
|
|
}
|
|
|
|
func pageController(_ pageController: WMPageController, titleAt index: Int) -> String {
|
|
return self.titles[index]
|
|
}
|
|
|
|
func pageController(_ pageController: WMPageController, viewControllerAt index: Int) -> UIViewController {
|
|
return viewControllers[index]
|
|
}
|
|
}
|