Visual_Novel_iOS/crush/Crush/Src/Modules/Discover/View/DiscoverHeadView.swift

65 lines
1.7 KiB
Swift
Raw Normal View History

2025-10-09 10:29:35 +00:00
//
// DiscoverHeadView.swift
// Crush
//
// Created by Leon on 2025/9/8.
//
import JXSegmentedView
import UIKit
class DiscoverHeadView: UIView {
var banner: DiscoverBanner!
var leaderboardEntryView: DiscoverHeadLeaderBoardEntryView!
var heightChangeBlock: ((CGFloat) -> Void)?
override init(frame: CGRect) {
super.init(frame: frame)
setupViews()
setupData()
setupEvent()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
private func setupViews() {
banner = {
let v = DiscoverBanner()
addSubview(v)
v.snp.makeConstraints { make in
make.leading.trailing.equalToSuperview()
make.top.equalToSuperview().offset(UIWindow.statusBarHeight + 24)
}
return v
}()
leaderboardEntryView = {
let v = DiscoverHeadLeaderBoardEntryView()
addSubview(v)
v.snp.makeConstraints { make in
//make.top.equalToSuperview().offset(UIWindow.statusBarHeight + 24)
make.top.equalTo(banner.snp.bottom).offset(24)
make.leading.equalToSuperview().offset(24)
make.trailing.equalToSuperview().offset(-24)
}
return v
}()
}
private func setupData() {
// #warning("test")
// leaderboardEntryView.topThreeView.showEmpty(true)
}
private func setupEvent() {
}
override func layoutSubviews() {
super.layoutSubviews()
let maxY = leaderboardEntryView.frame.maxY + 24
heightChangeBlock?(maxY)
}
}