From: liangzhenying <867174124@qq.com> Date: Wed, 28 Jan 2026 06:13:29 +0000 (+0800) Subject: Merge branch 'abroad' into mix X-Git-Tag: RaisoundVad~1 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=59df9c7a1d2e1aeccd8c9437ad880a983399c117;p=mirrors%2FShenYin.git Merge branch 'abroad' into mix --- 59df9c7a1d2e1aeccd8c9437ad880a983399c117 diff --cc ShenYin/ShenYin/Launch/SceneDelegate.swift index fa4c4d0,32c3493..1f9d25a --- a/ShenYin/ShenYin/Launch/SceneDelegate.swift +++ b/ShenYin/ShenYin/Launch/SceneDelegate.swift @@@ -17,10 -17,11 +17,9 @@@ class SceneDelegate: UIResponder, UIWin guard let _ = (scene as? UIWindowScene) else { return } App.shared.window = window - // window?.rootViewController = BaseTC() + AppLaunch.start() -// window?.rootViewController = BaseTC() // MapManager.shared.setupSdk() - window?.rootViewController = UINavigationController(rootViewController: SportSetVC()) - // AppLaunch.start() -// window?.rootViewController = UINavigationController(rootViewController: RSChatVC()) - ++// window?.rootViewController = UINavigationController(rootViewController: SportSetVC()) } func sceneDidDisconnect(_ scene: UIScene) { diff --cc ShenYin/ShenYin/UI/common/pop/CustomPicker3.swift index 78dea69,0000000..54c40bf mode 100644,000000..100644 --- a/ShenYin/ShenYin/UI/common/pop/CustomPicker3.swift +++ b/ShenYin/ShenYin/UI/common/pop/CustomPicker3.swift @@@ -1,110 -1,0 +1,110 @@@ +import UIKit + +class CustomPicker3: BasePresentView { + private let titleLabel = UILabel() + private let btn = UIButton(type: .custom) + private let okBtn = CustomButton() + private let datePicker = UIDatePicker() + var selectedDate = Date() { + didSet { + datePicker.date = selectedDate + } + } + var didSelected: ((Date) -> Void)? + private var title: String = "" + + init(title: String, defaultDate: Date = createDate(year: 2000, month: 1, day: 1)) { + self.title = title + self.selectedDate = defaultDate + let h = CGFloat(50 + 250 + kSafeBtm) // UIDatePicker的高度通常为250左右加上底部安全距离 + super.init(contentHeight: h) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + override func setupSubView() { + super.setupSubView() + contentView.addSubviews([titleLabel, btn, okBtn, datePicker]) + } + + override func setupLayout() { + super.setupLayout() + titleLabel.snp.makeConstraints { (m) in + m.top.equalToSuperview() + m.left.right.equalToSuperview().inset(60) + m.height.equalTo(50) + } + btn.snp.makeConstraints { (m) in + m.centerY.equalTo(titleLabel) + m.right.equalToSuperview() + m.size.equalTo(60) + } + okBtn.snp.makeConstraints { make in + make.bottom.equalToSuperview().inset(32) + make.left.right.equalToSuperview().inset(51) + make.height.equalTo(46) + } + datePicker.snp.makeConstraints { make in + make.left.right.equalToSuperview() + make.top.equalToSuperview().inset(50) + make.bottom.equalTo(okBtn.snp.top).offset(-10) + } + } + + override func setupStyle() { + super.setupStyle() + contentView.backgroundColor = .color(.cellBg) + titleLabel.do { (v) in + v.textColor = .color(.secondary) + v.font = .semiBold(16) + v.textAlignment = .center + v.text = title + } + btn.do { v in + v.setImage(UIImage(named: "close_icon"), for: .normal) + v.addTarget(self, action: #selector(closeAction), for: .touchUpInside) + } + datePicker.do { v in + if #available(iOS 13.4, *) { + v.preferredDatePickerStyle = .wheels + } + v.backgroundColor = .color(.cellBg) + v.datePickerMode = .date - if DCConfig.appLanguage == .chinse || DCConfig.appLanguage == .Traditional_Chinese { ++ if CCConfig.appLanguage == .chinse || CCConfig.appLanguage == .Traditional_Chinese { + v.locale = Locale(identifier: "zh_CN") + } + + v.addTarget(self, action: #selector(dateChanged(_:)), for: .valueChanged) + v.minimumDate = CustomPicker3.createDate(year: 1900, month: 1, day: 1) + v.maximumDate = Date() + v.date = selectedDate + } + okBtn.set(title: "确定", style: .theme1, target: self, action: #selector(okAction)) + } + + @objc func dateChanged(_ sender: UIDatePicker) { + selectedDate = sender.date + } + + @objc func closeAction() { + hide() + } + + @objc func okAction() { + didSelected?(selectedDate) + hide() + } + + private static func createDate(year: Int, month: Int, day: Int) -> Date { + var components = DateComponents() + components.year = year + components.month = month + components.day = day + components.hour = 0 + components.minute = 0 + components.second = 0 + return Calendar.current.date(from: components) ?? Date() + } +}