This commit is contained in:
zjx 2025-06-16 20:30:48 +08:00
parent 3fb1d9c61d
commit 7633936398
5 changed files with 91 additions and 34 deletions

View File

@ -1763,7 +1763,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.1;
MARKETING_VERSION = 1.0.2;
PRODUCT_BUNDLE_IDENTIFIER = com.qjwl168.veloria.ios;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@ -1804,7 +1804,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.1;
MARKETING_VERSION = 1.0.2;
PRODUCT_BUNDLE_IDENTIFIER = com.qjwl168.veloria.ios;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";

View File

@ -9,6 +9,10 @@ import UIKit
class VPPlayerCoinBuyView: UIView {
override var intrinsicContentSize: CGSize {
.init(width: UIScreen.width, height: 50)
}
var dataArr: [VPPayTemplateItem] = [] {
didSet {
self.collectionView.reloadData()
@ -43,14 +47,7 @@ class VPPlayerCoinBuyView: UIView {
return collectionView
}()
private lazy var tipLabel: UILabel = {
let label = UILabel()
label.numberOfLines = 0
label.textColor = .colorFFFFFF(alpha: 0.5)
label.font = .fontRegular(ofSize: 12)
label.text = "veloria_store_tips_ios".localized
return label
}()
override init(frame: CGRect) {
super.init(frame: frame)
@ -68,21 +65,22 @@ extension VPPlayerCoinBuyView {
private func vp_setupUI() {
addSubview(collectionView)
addSubview(tipLabel)
// addSubview(tipLabel)
collectionView.snp.makeConstraints { make in
make.left.right.top.equalToSuperview()
make.top.equalToSuperview().offset(20)
make.left.right.equalToSuperview()
make.height.equalTo(collectionViewLayout.itemSize.height)
// make.bottom.equalToSuperview()
}
tipLabel.snp.makeConstraints { make in
make.left.equalToSuperview().offset(15)
make.right.lessThanOrEqualToSuperview().offset(-15)
make.top.equalTo(collectionView.snp.bottom).offset(12)
make.bottom.equalToSuperview()
}
// tipLabel.snp.makeConstraints { make in
// make.left.equalToSuperview().offset(15)
// make.right.lessThanOrEqualToSuperview().offset(-15)
// make.top.equalTo(collectionView.snp.bottom).offset(12)
// make.bottom.equalToSuperview()
// }
}
}

View File

@ -53,6 +53,14 @@ class VPPlayerRechargeView: HWPanModalContentView {
return scrollView
}()
private lazy var stackView: UIStackView = {
let view = UIStackView()
view.axis = .vertical
view.spacing = 0
view.alignment = .center
return view
}()
private lazy var vipView: VPPlayerVipBuyView = {
let view = VPPlayerVipBuyView()
view.buyFinishBlock = { [weak self] in
@ -73,6 +81,18 @@ class VPPlayerRechargeView: HWPanModalContentView {
return view
}()
private lazy var tipLabel: UILabel = {
let label = UILabel()
label.numberOfLines = 0
label.textColor = .colorFFFFFF(alpha: 0.5)
label.font = .fontRegular(ofSize: 12)
label.text = "veloria_store_tips_ios".localized
label.snp.makeConstraints { make in
make.width.lessThanOrEqualTo(UIScreen.width - 30)
}
return label
}()
deinit {
NotificationCenter.default.removeObserver(self)
}
@ -171,8 +191,7 @@ extension VPPlayerRechargeView {
addSubview(coinLabel)
addSubview(coinIconImageView)
addSubview(scrollView)
scrollView.addSubview(vipView)
scrollView.addSubview(coinView)
scrollView.addSubview(stackView)
bgView.snp.makeConstraints { make in
make.left.right.top.equalToSuperview()
@ -201,18 +220,12 @@ extension VPPlayerRechargeView {
make.bottom.equalToSuperview()
}
vipView.snp.makeConstraints { make in
make.left.equalToSuperview()
make.centerX.equalToSuperview()
stackView.snp.makeConstraints { make in
make.left.centerX.equalToSuperview()
make.top.equalToSuperview()
}
coinView.snp.makeConstraints { make in
make.left.equalToSuperview()
make.centerX.equalToSuperview()
make.top.equalTo(vipView.snp.bottom).offset(20)
make.bottom.equalToSuperview().offset(-(UIScreen.tabbarSafeBottomMargin + 10))
}
}
}
@ -223,10 +236,27 @@ extension VPPlayerRechargeView {
VPWalletAPI.requestPayTemplate { [weak self] model in
guard let self = self else { return }
stackView.removeAllArrangedSubview()
if let model = model {
self.vipView.dataArr = model.list_sub_vip ?? []
self.coinView.dataArr = model.list_coins ?? []
if self.vipView.dataArr.count > 0 {
self.stackView.addArrangedSubview(self.vipView)
}
if self.coinView.dataArr.count > 0 {
self.stackView.addArrangedSubview(self.coinView)
}
if let view = self.stackView.arrangedSubviews.last {
self.stackView.setCustomSpacing(12, after: view)
}
self.stackView.addArrangedSubview(tipLabel)
}
self.panModalSetNeedsLayoutUpdate()
}
}

View File

@ -9,6 +9,10 @@ import UIKit
class VPPlayerVipBuyView: UIView {
override var intrinsicContentSize: CGSize {
return .init(width: UIScreen.width, height: 50)
}
var dataArr: [VPPayTemplateItem] = [] {
didSet {
self.pageScrollView.reloadData()
@ -208,6 +212,7 @@ extension VPPlayerVipBuyView: ZKCycleScrollViewDelegate, ZKCycleScrollViewDataSo
VPIAPManager.manager.start(model: dataArr[index]) { finish in
if finish {
VPLoginManager.manager.updateUserInfo(completer: nil)
self.buyFinishBlock?()
}
}
}

View File

@ -16,9 +16,9 @@ class VPVipPageViewController: VPViewController {
private lazy var vipVC = VPVipViewController()
private lazy var coinsVC = VPCoinsViewController()
private lazy var viewControllers: [UIViewController] = {
return [vipVC, coinsVC]
}()
private lazy var titles: [String] = []
private lazy var viewControllers: [UIViewController] = []
//MARK: UI
private lazy var topImageView: UIImageView = {
@ -47,7 +47,6 @@ class VPVipPageViewController: VPViewController {
private lazy var pageParam: WMZPageParam = {
let param = WMZPageParam()
param.wTitleArr = ["vip".localized, "coins".localized]
param.wViewController = { [weak self] index in
return self?.viewControllers[index]
}
@ -101,6 +100,7 @@ class VPVipPageViewController: VPViewController {
vp_setupUI()
requestData()
reloadData()
}
override func viewWillAppear(_ animated: Bool) {
@ -125,6 +125,18 @@ class VPVipPageViewController: VPViewController {
}
}
}
private func reloadData() {
pageParam.wTitleArr = self.titles
if titles.count > 1 {
pageParam.wMenuHeight = 46
} else {
pageParam.wMenuHeight = 0
}
self.pageView.updatePageController()
}
}
extension VPVipPageViewController {
@ -170,6 +182,18 @@ extension VPVipPageViewController {
if let model = model {
self.vipVC.dataArr = model.list_sub_vip ?? []
self.coinsVC.dataArr = model.list_coins ?? []
if self.vipVC.dataArr.count > 0 {
self.titles.append("vip".localized)
self.viewControllers.append(vipVC)
}
if self.coinsVC.dataArr.count > 0 {
self.titles.append("coins".localized)
self.viewControllers.append(coinsVC)
}
self.reloadData()
}
}