Commit cc6e72f8 authored by David黄金龙's avatar David黄金龙

电子签证缴费

parent 9bb57af5
...@@ -518,6 +518,9 @@ ...@@ -518,6 +518,9 @@
A567E5B72BD7643D00D5D5A0 /* YHHkLifeAndIdItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A567E5902BD7643D00D5D5A0 /* YHHkLifeAndIdItemView.swift */; }; A567E5B72BD7643D00D5D5A0 /* YHHkLifeAndIdItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A567E5902BD7643D00D5D5A0 /* YHHkLifeAndIdItemView.swift */; };
A567E5B82BD7643D00D5D5A0 /* YHSearchItemLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = A567E5912BD7643D00D5D5A0 /* YHSearchItemLayout.swift */; }; A567E5B82BD7643D00D5D5A0 /* YHSearchItemLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = A567E5912BD7643D00D5D5A0 /* YHSearchItemLayout.swift */; };
A56D2D612B62020C009C83A8 /* YHContractMainItemStatusCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56D2D602B62020C009C83A8 /* YHContractMainItemStatusCell.swift */; }; A56D2D612B62020C009C83A8 /* YHContractMainItemStatusCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56D2D602B62020C009C83A8 /* YHContractMainItemStatusCell.swift */; };
A57BFDE42C732AEF00A78E51 /* YHVisaPaymentVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = A57BFDE32C732AEF00A78E51 /* YHVisaPaymentVC.swift */; };
A57BFDE62C73332E00A78E51 /* YHVisaPaymentTipsCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A57BFDE52C73332E00A78E51 /* YHVisaPaymentTipsCell.swift */; };
A57BFDE82C73371300A78E51 /* YHVisaPayTypeCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A57BFDE72C73371300A78E51 /* YHVisaPayTypeCell.swift */; };
A580371E2BAD784B0031C312 /* YHMySchemeViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A580371D2BAD784B0031C312 /* YHMySchemeViewModel.swift */; }; A580371E2BAD784B0031C312 /* YHMySchemeViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A580371D2BAD784B0031C312 /* YHMySchemeViewModel.swift */; };
A58037212BAD7B2A0031C312 /* YHMySchemeModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A58037202BAD7B2A0031C312 /* YHMySchemeModel.swift */; }; A58037212BAD7B2A0031C312 /* YHMySchemeModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A58037202BAD7B2A0031C312 /* YHMySchemeModel.swift */; };
A582B23D2BB944ED009D098C /* YHHKPlanDoctumentVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = A582B23C2BB944ED009D098C /* YHHKPlanDoctumentVC.swift */; }; A582B23D2BB944ED009D098C /* YHHKPlanDoctumentVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = A582B23C2BB944ED009D098C /* YHHKPlanDoctumentVC.swift */; };
...@@ -1188,6 +1191,9 @@ ...@@ -1188,6 +1191,9 @@
A567E5902BD7643D00D5D5A0 /* YHHkLifeAndIdItemView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHHkLifeAndIdItemView.swift; sourceTree = "<group>"; }; A567E5902BD7643D00D5D5A0 /* YHHkLifeAndIdItemView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHHkLifeAndIdItemView.swift; sourceTree = "<group>"; };
A567E5912BD7643D00D5D5A0 /* YHSearchItemLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHSearchItemLayout.swift; sourceTree = "<group>"; }; A567E5912BD7643D00D5D5A0 /* YHSearchItemLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHSearchItemLayout.swift; sourceTree = "<group>"; };
A56D2D602B62020C009C83A8 /* YHContractMainItemStatusCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHContractMainItemStatusCell.swift; sourceTree = "<group>"; }; A56D2D602B62020C009C83A8 /* YHContractMainItemStatusCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHContractMainItemStatusCell.swift; sourceTree = "<group>"; };
A57BFDE32C732AEF00A78E51 /* YHVisaPaymentVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHVisaPaymentVC.swift; sourceTree = "<group>"; };
A57BFDE52C73332E00A78E51 /* YHVisaPaymentTipsCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHVisaPaymentTipsCell.swift; sourceTree = "<group>"; };
A57BFDE72C73371300A78E51 /* YHVisaPayTypeCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHVisaPayTypeCell.swift; sourceTree = "<group>"; };
A580371D2BAD784B0031C312 /* YHMySchemeViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHMySchemeViewModel.swift; sourceTree = "<group>"; }; A580371D2BAD784B0031C312 /* YHMySchemeViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHMySchemeViewModel.swift; sourceTree = "<group>"; };
A58037202BAD7B2A0031C312 /* YHMySchemeModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHMySchemeModel.swift; sourceTree = "<group>"; }; A58037202BAD7B2A0031C312 /* YHMySchemeModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHMySchemeModel.swift; sourceTree = "<group>"; };
A582B23C2BB944ED009D098C /* YHHKPlanDoctumentVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKPlanDoctumentVC.swift; sourceTree = "<group>"; }; A582B23C2BB944ED009D098C /* YHHKPlanDoctumentVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKPlanDoctumentVC.swift; sourceTree = "<group>"; };
...@@ -2233,6 +2239,7 @@ ...@@ -2233,6 +2239,7 @@
046A952B2C6EFA710059326A /* Certificate(办证段) */ = { 046A952B2C6EFA710059326A /* Certificate(办证段) */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
A57BFDE02C732A4700A78E51 /* VisaPayment(4电子签字缴费) */,
049D62C32C6F259D00E811A1 /* FamilyInfoConfirm(家庭信息确认) */, 049D62C32C6F259D00E811A1 /* FamilyInfoConfirm(家庭信息确认) */,
); );
path = "Certificate(办证段)"; path = "Certificate(办证段)";
...@@ -2993,6 +3000,32 @@ ...@@ -2993,6 +3000,32 @@
path = V; path = V;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
A57BFDE02C732A4700A78E51 /* VisaPayment(4电子签字缴费) */ = {
isa = PBXGroup;
children = (
A57BFDE22C732AA700A78E51 /* V */,
A57BFDE12C732A8300A78E51 /* C */,
);
path = "VisaPayment(4电子签字缴费)";
sourceTree = "<group>";
};
A57BFDE12C732A8300A78E51 /* C */ = {
isa = PBXGroup;
children = (
A57BFDE32C732AEF00A78E51 /* YHVisaPaymentVC.swift */,
);
path = C;
sourceTree = "<group>";
};
A57BFDE22C732AA700A78E51 /* V */ = {
isa = PBXGroup;
children = (
A57BFDE52C73332E00A78E51 /* YHVisaPaymentTipsCell.swift */,
A57BFDE72C73371300A78E51 /* YHVisaPayTypeCell.swift */,
);
path = V;
sourceTree = "<group>";
};
A580371C2BAD77DB0031C312 /* VM */ = { A580371C2BAD77DB0031C312 /* VM */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
...@@ -3796,6 +3829,7 @@ ...@@ -3796,6 +3829,7 @@
045EEEB32B9F171A0022A143 /* YHWorkFileSyncTableViewCell.swift in Sources */, 045EEEB32B9F171A0022A143 /* YHWorkFileSyncTableViewCell.swift in Sources */,
045EEEF12B9F171A0022A143 /* YHChildInfoContainerVC.swift in Sources */, 045EEEF12B9F171A0022A143 /* YHChildInfoContainerVC.swift in Sources */,
045EEF0B2B9F171A0022A143 /* YHBasicInfoFillViewController.swift in Sources */, 045EEF0B2B9F171A0022A143 /* YHBasicInfoFillViewController.swift in Sources */,
A57BFDE42C732AEF00A78E51 /* YHVisaPaymentVC.swift in Sources */,
04F5F8682C198372004A463C /* YHHKClassListViewController.swift in Sources */, 04F5F8682C198372004A463C /* YHHKClassListViewController.swift in Sources */,
A582B2452BBA4CF9009D098C /* YHHKPlanDocModel.swift in Sources */, A582B2452BBA4CF9009D098C /* YHHKPlanDocModel.swift in Sources */,
045EEF142B9F171A0022A143 /* YHItemModel.swift in Sources */, 045EEF142B9F171A0022A143 /* YHItemModel.swift in Sources */,
...@@ -3838,6 +3872,7 @@ ...@@ -3838,6 +3872,7 @@
048787D12BCE61B20036E221 /* YHServiceNoOrderView.swift in Sources */, 048787D12BCE61B20036E221 /* YHServiceNoOrderView.swift in Sources */,
A567E5AC2BD7643D00D5D5A0 /* YHAgreementAlertView.swift in Sources */, A567E5AC2BD7643D00D5D5A0 /* YHAgreementAlertView.swift in Sources */,
04CE1ADD2C2AD91F001CB80A /* YHActivityDetailCell.swift in Sources */, 04CE1ADD2C2AD91F001CB80A /* YHActivityDetailCell.swift in Sources */,
A57BFDE62C73332E00A78E51 /* YHVisaPaymentTipsCell.swift in Sources */,
04AA19FD2BB40D5C00C1CBBD /* Applegate(JPush).swift in Sources */, 04AA19FD2BB40D5C00C1CBBD /* Applegate(JPush).swift in Sources */,
A567E5972BD7643D00D5D5A0 /* YHHomeModel.swift in Sources */, A567E5972BD7643D00D5D5A0 /* YHHomeModel.swift in Sources */,
04AF82D82C291E960028CE2A /* YHMatchUserViewModel.swift in Sources */, 04AF82D82C291E960028CE2A /* YHMatchUserViewModel.swift in Sources */,
...@@ -4247,6 +4282,7 @@ ...@@ -4247,6 +4282,7 @@
A554A5122B99715000EA5973 /* YHConstantArrayData.swift in Sources */, A554A5122B99715000EA5973 /* YHConstantArrayData.swift in Sources */,
045EEE962B9F171A0022A143 /* YHPreviewInfoCertificatePictureItemsView.swift in Sources */, 045EEE962B9F171A0022A143 /* YHPreviewInfoCertificatePictureItemsView.swift in Sources */,
A592FE912BA6CC010062FACA /* YHCertificateEntryHeadView.swift in Sources */, A592FE912BA6CC010062FACA /* YHCertificateEntryHeadView.swift in Sources */,
A57BFDE82C73371300A78E51 /* YHVisaPayTypeCell.swift in Sources */,
0425E63D2BA9345200A5E763 /* YHSchemeTableViewCell.swift in Sources */, 0425E63D2BA9345200A5E763 /* YHSchemeTableViewCell.swift in Sources */,
047AA3FC2C61EE7F009C4554 /* YHSignAppendStepView.swift in Sources */, 047AA3FC2C61EE7F009C4554 /* YHSignAppendStepView.swift in Sources */,
044D0C1E2C22CFBF00C5CF5E /* YHEditWorkViewController.swift in Sources */, 044D0C1E2C22CFBF00C5CF5E /* YHEditWorkViewController.swift in Sources */,
......
//
// YHVisaPaymentVC.swift
// galaxy
//
// Created by davidhuangA on 2024/8/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHVisaPaymentVC: YHBaseViewController {
var items: [String] = ["1", "1"] //for test hjl
lazy var tableView: UITableView = {
let tableView = UITableView(frame:.zero, style:.grouped)
tableView.estimatedSectionHeaderHeight = 16.0
tableView.estimatedSectionFooterHeight = 0.01
tableView.contentInsetAdjustmentBehavior = .never
tableView.showsVerticalScrollIndicator = false
tableView.separatorStyle = .none
tableView.delegate = self
tableView.dataSource = self
tableView.backgroundColor = .clear
tableView.register(UITableViewCell.self, forCellReuseIdentifier: "UITableViewCell")
tableView.register(YHVisaPaymentTipsCell.self, forCellReuseIdentifier: YHVisaPaymentTipsCell.cellReuseIdentifier)
tableView.register(YHVisaPayTypeCell.self, forCellReuseIdentifier: YHVisaPayTypeCell.cellReuseIdentifier)
return tableView
}()
//我已悉知,确认
lazy var rewardBtn: UIButton = {
let button = UIButton(type: .custom)
button.titleLabel?.font = UIFont.PFSC_M(ofSize: 15)
button.contentHorizontalAlignment = .center
button.setTitle("我已全部缴费,下一步", for: .normal)
button.setTitle("缴费结果更新中,请耐心等待", for: .disabled)
button.setTitleColor(UIColor.white, for: .normal)
button.setTitleColor(UIColor.white, for: .disabled)
button.layer.cornerRadius = kCornerRadius3
button.clipsToBounds = true
button.addTarget(self, action: #selector(clickNextBtn), for: .touchUpInside)
button.backgroundColor = UIColor.brandMainColor
return button
}()
lazy var bottomView: UIView = {
let view = UIView()
view.backgroundColor = .clear
view.addSubview(self.rewardBtn)
self.rewardBtn.snp.makeConstraints { make in
make.top.equalToSuperview().offset(10)
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
make.height.equalTo(44)
}
view.layer.zPosition = 10
return view
}()
override func viewDidLoad() {
super.viewDidLoad()
setupUI()
}
}
private extension YHVisaPaymentVC {
func setupUI() {
gk_navTitle = "签证缴费"
gk_navBarAlpha = 1.0
gk_navBackgroundColor = .white
view.backgroundColor = UIColor.contentBkgColor
view.addSubview(tableView)
view.addSubview(bottomView)
bottomView.snp.makeConstraints { make in
make.bottom.left.right.equalToSuperview()
make.height.equalTo(98)
}
tableView.snp.makeConstraints { make in
make.left.equalToSuperview().offset(kMargin)
make.right.equalToSuperview().offset(-kMargin)
make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
make.bottom.equalTo(bottomView.snp.top)
}
}
@objc func clickNextBtn() {
YHHUD.flash(message: "预计会在1个工作日内更新缴费结果")
disableSureButton()
}
func disableSureButton() {
rewardBtn.isEnabled = false
rewardBtn.backgroundColor = UIColor.brandMainColor30
}
}
extension YHVisaPaymentVC: UITableViewDelegate, UITableViewDataSource {
func numberOfSections(in tableView: UITableView) -> Int {
return 2
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
if 0 <= indexPath.section && indexPath.section < items.count {
if indexPath.section == 0 {
let warningCell = tableView.dequeueReusableCell(withIdentifier: YHVisaPaymentTipsCell.cellReuseIdentifier, for: indexPath)
return warningCell
}
}
let approveCell = tableView.dequeueReusableCell(withIdentifier: YHVisaPayTypeCell.cellReuseIdentifier, for: indexPath)
return approveCell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.section == 0 {
return YHVisaPaymentTipsCell.cellH
}
return UITableView.automaticDimension
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if 0 <= indexPath.section && indexPath.section < items.count {
}
}
private func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> CGFloat {
return 16.0
}
private func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> CGFloat {
return 0.01
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView()
return view
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
let view = UIView()
return view
}
}
//
// YHVisaPayTypeCell.swift
// galaxy
//
// Created by davidhuangA on 2024/8/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
import AttributedString
import Photos
class YHVisaPayTypeCell: UITableViewCell {
static let cellReuseIdentifier = "YHVisaPayTypeCell"
lazy var whiteContentView: UIView = {
let view = UIView()
view.backgroundColor = .white
view.layer.cornerRadius = kCornerRadius6
view.clipsToBounds = true
view.backgroundColor = .white
return view
}()
/// 已添加的长按手势
private lazy var longPress: UILongPressGestureRecognizer = {
return UILongPressGestureRecognizer(target: self, action: #selector(onLongPress(_:)))
}()
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
setupUI()
}
}
private extension YHVisaPayTypeCell {
func saveImage(_ image: UIImage) {
// 确保应用有权访问相册
PHPhotoLibrary.requestAuthorization { status in
if status == .authorized {
// 保存图片到相册
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil)
DispatchQueue.main.async {
YHHUD.flash(message: "保存成功")
}
} else {
YHHUD.flash(message: "保存失败,请检查系统权限")
}
}
}
/// 长按
@objc func onLongPress(_ press: UILongPressGestureRecognizer) {
if press.state == .began {
saveImage(UIImage(named: "visaPay_qr") ?? UIImage())
}
}
func setupUI() {
selectionStyle = .none
backgroundColor = .clear
contentView.backgroundColor = .clear
contentView.addSubview(whiteContentView)
whiteContentView.snp.makeConstraints { make in
make.edges.equalToSuperview()
}
//
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.font = UIFont.PFSC_M(ofSize:17)
label.text = "港府官网缴费方式"
whiteContentView.addSubview(label)
label.snp.makeConstraints { make in
make.top.equalTo(kMargin)
make.left.equalTo(kMargin)
make.height.equalTo(24)
}
let line = UIView()
line.backgroundColor = .separatorColor
whiteContentView.addSubview(line)
line.snp.makeConstraints { make in
make.top.equalTo(label.snp.bottom).offset(12)
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
make.height.equalTo(1)
}
let label1 = UILabel()
label1.textColor = UIColor.mainTextColor
label1.font = UIFont.PFSC_M(ofSize:14)
label1.text = "方式一"
whiteContentView.addSubview(label1)
label1.snp.makeConstraints { make in
make.top.equalTo(line.snp.bottom).offset(kMargin)
make.left.equalTo(kMargin)
make.height.equalTo(20)
}
let label2 = UILabel()
label2.textColor = UIColor.mainTextColor50
label2.font = UIFont.PFSC_R(ofSize:12)
label2.text = "点击下方链接,跳转浏览器,进入港府官网操作缴费"
whiteContentView.addSubview(label2)
label2.snp.makeConstraints { make in
make.top.equalTo(label1.snp.bottom).offset(6)
make.left.equalTo(kMargin)
make.height.equalTo(17)
}
let holdView = UIView()
holdView.backgroundColor = .separatorColor
holdView.layer.cornerRadius = kCornerRadius4
holdView.clipsToBounds = true
whiteContentView.addSubview(holdView)
holdView.snp.makeConstraints { make in
make.top.equalTo(label2.snp.bottom).offset(6)
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
make.height.equalTo(66)
}
let link = UILabel()
link.numberOfLines = 0
link.textColor = UIColor.brandMainColor
link.font = UIFont.PFSC_R(ofSize:12)
let linkTxt : String = "https://www.gov.hk/tc/residents/immigration/nonpermanent/onlinepaymentforevisa.htm"
let aa: ASAttributedString = .init(NSAttributedString(string: linkTxt), .font(UIFont.PFSC_R(ofSize: 12)),.foreground(UIColor.brandMainColor),.underline([.single], color: UIColor.brandMainColor),.action {
if let url = URL(string: linkTxt) {
if UIApplication.shared.canOpenURL(url) {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
} else {
// 显示一个提示,告知用户无法打开链接
print("无法打开链接")
}
}
})
link.attributed.text = aa
holdView.addSubview(link)
link.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
}
let line2 = UIView()
line2.backgroundColor = .separatorColor
whiteContentView.addSubview(line2)
line2.snp.makeConstraints { make in
make.top.equalTo(holdView.snp.bottom).offset(16)
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
make.height.equalTo(1)
}
let qrCode : UIImageView = UIImageView(image: UIImage(named: "visaPay_qr"))
qrCode.contentMode = .scaleAspectFill
qrCode.isUserInteractionEnabled = true
qrCode.addGestureRecognizer(longPress)
whiteContentView.addSubview(qrCode)
qrCode.snp.makeConstraints { make in
make.top.equalTo(line2.snp.bottom).offset(18)
make.right.equalTo(-kMargin)
make.height.width.equalTo(86)
make.bottom.equalToSuperview().offset(-kMargin)
}
let label3 = UILabel()
label3.textColor = UIColor.mainTextColor
label3.font = UIFont.PFSC_M(ofSize:14)
label3.text = "方式二"
whiteContentView.addSubview(label3)
label3.snp.makeConstraints { make in
make.top.equalTo(qrCode.snp.top).offset(12)
make.left.equalTo(kMargin)
make.height.equalTo(20)
}
let label4 = UILabel()
label4.numberOfLines = 0
label4.lineBreakMode = .byWordWrapping
label4.textColor = UIColor.mainTextColor50
label4.font = UIFont.PFSC_R(ofSize:12)
label4.text = "用其他设备直接扫码,或长按保存图片,通过微信识别打开"
whiteContentView.addSubview(label4)
label4.snp.makeConstraints { make in
make.top.equalTo(label3.snp.bottom).offset(6)
make.left.equalTo(kMargin)
make.right.equalTo(qrCode.snp.left).offset(-kMargin)
}
}
}
//
// YHVisaPaymentTipsCell.swift
// galaxy
//
// Created by davidhuangA on 2024/8/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHVisaPaymentTipsCell: UITableViewCell {
static let cellReuseIdentifier = "YHVisaPaymentTipsCell"
static let cellH : CGFloat = 184.0 * (KScreenWidth - 16 * 2) / 343.0
lazy var whiteContentView: UIView = {
let view = UIView()
view.backgroundColor = .white
view.layer.cornerRadius = kCornerRadius6
view.clipsToBounds = true
return view
}()
lazy var bgImgView: UIImageView = {
let view = UIImageView(image: UIImage(named: "visalPay_tips"))
view.layer.cornerRadius = kCornerRadius6
view.clipsToBounds = true
return view
}()
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
setupUI()
}
func setupUI() {
selectionStyle = .none
backgroundColor = .clear
contentView.backgroundColor = .clear
contentView.addSubview(whiteContentView)
whiteContentView.addSubview(bgImgView)
whiteContentView.snp.makeConstraints { make in
make.edges.equalToSuperview()
}
bgImgView.snp.makeConstraints { make in
make.edges.equalToSuperview()
}
}
}
...@@ -120,11 +120,14 @@ class YHMyViewController: YHBaseViewController, ConstraintRelatableTarget { ...@@ -120,11 +120,14 @@ class YHMyViewController: YHBaseViewController, ConstraintRelatableTarget {
view.likeClick = { view.likeClick = {
[weak self] in [weak self] in
guard let self = self else { return } guard let self = self else { return }
if !checkLogin() { return } // if !checkLogin() { return }
let vc = YHMyLikeActivityViewController() // let vc = YHMyLikeActivityViewController()
vc.myDefaultNavItemIndex = 0 // vc.myDefaultNavItemIndex = 0
self.navigationController?.pushViewController(vc) // self.navigationController?.pushViewController(vc)
print("点赞") print("点赞")
let vc = YHVisaPaymentVC()
self.navigationController?.pushViewController(vc) //for test hjl
} }
view.collectClick = { view.collectClick = {
[weak self] in [weak self] in
......
...@@ -12,7 +12,7 @@ extension CGFloat { ...@@ -12,7 +12,7 @@ extension CGFloat {
public func scaleSizeFrom375px(size: CGFloat) -> CGFloat { public func scaleSizeFrom375px(size: CGFloat) -> CGFloat {
let screenWidth = UIScreen.main.bounds.width let screenWidth = UIScreen.main.bounds.width
// 假设设计稿基于375pt宽度,iPhone 6的屏幕宽度 // 假设设计稿基于375pt宽度,iPhone 6的屏幕宽度
let baseWidth: CGFloat = 375 let baseWidth: CGFloat = 375.0
// 计算换算比例 // 计算换算比例
let scale = screenWidth / baseWidth let scale = screenWidth / baseWidth
// 应用换算比例 // 应用换算比例
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "image 56@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "image 56@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "tips@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "tips@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment